一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 2756|回复: 21
收起左侧

Snapchat电面面经12.16

[复制链接] |试试Instant~ |关注本帖
wind1689 发表于 2015-12-17 08:14:36 | 显示全部楼层 |阅读模式

2015(10-12月) 码农类 硕士 全职@Snapchat - 内推 - 技术电面 |Otherfresh grad应届毕业生

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干货,去instant注册!

x
刚面完电面。两道题。1. Design. more info on 1point3acres.com
// snapchatter send-list. more info on 1point3acres.com
// toggle(string username) . 鍥磋鎴戜滑@1point 3 acres
// getSelectedLlist()
// t: a getsl: a
// t: a b c getSl: a b c
// t: a b a c getSl: b c

. Waral 鍗氬鏈夋洿澶氭枃绔,
Design题我给的设计,用了doublelinkedlist,确保了toggle时的时间复杂度为O(1)

2. Three Sum





评分

1

查看全部评分

tangvictor 发表于 2015-12-18 10:43:30 | 显示全部楼层
第一题能否举个例子,没太看懂。。
回复 支持 反对

使用道具 举报

Gianluigi 发表于 2015-12-18 13:30:24 | 显示全部楼层
比如 toddle(a), getList 返回 a;
再 toddle(b), getList 返回 a b;
再 toddle(c), getList 返回 a b c;. more info on 1point3acres.com
再 toddle(b),getList 返回 a c. 1point3acres.com/bbs
再 toddle(c),getList 返回 a
回复 支持 反对

使用道具 举报

xin1q1q12 发表于 2015-12-23 17:00:22 | 显示全部楼层
结果怎么样楼主
回复 支持 反对

使用道具 举报

haoxuango 发表于 2015-12-23 23:47:22 | 显示全部楼层
楼主oa是什么时候做的?
回复 支持 反对

使用道具 举报

谎言之躯 发表于 2015-12-30 23:46:45 | 显示全部楼层
snapchat的面试可以用C++写代码吗?
回复 支持 反对

使用道具 举报

Gianluigi 发表于 2015-12-31 01:39:07 | 显示全部楼层
谎言之躯 发表于 2015-12-30 23:46
snapchat的面试可以用C++写代码吗?
. Waral 鍗氬鏈夋洿澶氭枃绔,
可以的,至少电面是可以选自己喜欢的语言。在 Hackerrank 的环境里。
回复 支持 反对

使用道具 举报

shawn.chris 发表于 2016-1-1 07:29:40 | 显示全部楼层
非常有帮助,谢谢楼主!
回复 支持 反对

使用道具 举报

谎言之躯 发表于 2016-1-1 10:08:22 | 显示全部楼层
这道题的list是不是一开始就给好了?
回复 支持 反对

使用道具 举报

Gianluigi 发表于 2016-1-1 10:31:25 | 显示全部楼层
谎言之躯 发表于 2016-1-1 10:08
这道题的list是不是一开始就给好了?

不是的,list 是通过 toddle() 一个字符一个字符的输进去的。
回复 支持 反对

使用道具 举报

谎言之躯 发表于 2016-1-1 10:47:25 | 显示全部楼层
Gianluigi 发表于 2016-1-1 10:31
不是的,list 是通过 toddle() 一个字符一个字符的输进去的。

比如 toddle(a), getList 返回 a;
再 toddle(b), getList 返回 a b;
再 toddle(c), getList 返回 a b c;
再 toddle(b),getList 返回 a c

现在这个时候再toddle(b),是返回a c b还是a b c?
回复 支持 反对

使用道具 举报

Gianluigi 发表于 2016-1-1 12:29:14 | 显示全部楼层
谎言之躯 发表于 2016-1-1 10:47
比如 toddle(a), getList 返回 a;. Waral 鍗氬鏈夋洿澶氭枃绔,
再 toddle(b), getList 返回 a b;
再 toddle(c), getList 返回 a b ...

a c b

字数字数
回复 支持 反对

使用道具 举报

谎言之躯 发表于 2016-1-1 13:21:23 | 显示全部楼层
Gianluigi 发表于 2016-1-1 12:29
a c b. 1point3acres.com/bbs

字数字数

那岂不是跟LRU cache类似?
回复 支持 反对

使用道具 举报

RagingSword 发表于 2016-1-2 06:13:36 | 显示全部楼层
谎言之躯 发表于 2016-1-1 13:21
那岂不是跟LRU cache类似?

同意,感觉就是doubleLinkedList + HashMap
回复 支持 反对

使用道具 举报

yangyuzhiguang 发表于 2016-1-16 04:07:15 | 显示全部楼层
楼主可以详细讲一下第一题吗,我表示还没看懂,谢谢啦!
回复 支持 反对

使用道具 举报

nnwoshinn 发表于 2016-1-16 04:14:24 | 显示全部楼层
请问下楼主有skeleton code吗,最后要运行通过么?
回复 支持 反对

使用道具 举报

gjxwin 发表于 2016-1-20 09:36:22 | 显示全部楼层
谎言之躯 发表于 2016-1-1 13:21
那岂不是跟LRU cache类似?

求问这道题啥意思啊,toggle是增加吗?那得有个最大容量吧?谢谢!
回复 支持 反对

使用道具 举报

Mango0917 发表于 2016-1-31 12:00:12 | 显示全部楼层
楼主为啥要用double linked list? linked list + hashmap不行么

补充内容 (2016-1-31 12:01):
哦哦,知道了
回复 支持 反对

使用道具 举报

hakusama1024 发表于 2016-2-1 04:24:05 | 显示全部楼层
有没有大神写了这个toggle的代码啊。求指点。
回复 支持 反对

使用道具 举报

importcoder 发表于 2016-9-7 19:23:27 | 显示全部楼层
不知道用LinkedHashSet写可不可以?. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
  1. public class GroupSend {
  2.        
  3.         private LinkedHashSet<String> selected;
  4.        
  5.         public GroupSend() {. 1point 3acres 璁哄潧
  6.                 selected = new LinkedHashSet<>();
  7.         }
  8.        
  9.         public void toggle(String username) {
  10.                 if (selected.contains(username)) {
  11.                         selected.remove(username);. Waral 鍗氬鏈夋洿澶氭枃绔,
  12.                 } else {
  13.                         selected.add(username);
  14.                 }
  15.         }
  16.         . from: 1point3acres.com/bbs
  17.         public List<String> getSelectedList() {. Waral 鍗氬鏈夋洿澶氭枃绔,
  18.                 List<String> list = new ArrayList<>();. 1point3acres.com/bbs
  19.                 java.util.Iterator<String> it = selected.iterator();
  20.                 while (it.hasNext()) {. 鍥磋鎴戜滑@1point 3 acres
  21.                         list.add(it.next());
  22.                 }
  23.                 return list;.1point3acres缃
  24.         }
  25.        
  26.         public static void main(String[] args) {
  27.                 GroupSend solution = new GroupSend();
  28.                 solution.toggle("a");
  29.                 solution.toggle("b");. 1point3acres.com/bbs
  30.                 solution.toggle("c");.鐣欏璁哄潧-涓浜-涓夊垎鍦
  31.                 solution.toggle("d");
  32.                 solution.toggle("e");
  33.                 solution.toggle("f");. 1point 3acres 璁哄潧
  34.                 System.out.println(solution.getSelectedList());
  35.                 solution.toggle("c");
  36.                 System.out.println(solution.getSelectedList());
  37.         }. 鍥磋鎴戜滑@1point 3 acres
  38. }
复制代码
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-8 14:32

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表