Snapchat 面经(电面+onsite)

在网上投了简历,一周后收到面试通知。面试是在 Snapchat LA 总部面的,公司环境很好,可以看到海景。另外,面试报销机票、住宿的所有费用。平常在大农村住久了,这次就当去 LA 玩一下。

整个面试过程包括一场电面和四场onsite。

电面1

电面比较轻松,先是自我介绍,然后问了一些我简历上的项目问题。因为这一部分可以提前准备,所以表现的比较好。另外还问了一道Lintcode上中等难度的算法题

1、 完美平方

这道题目之前在Lintcode上刷过,所以完成的还不错。

Lintcode原题链接:http://www.lintcode.com/zh-cn/problem/perfect-squares/

参考答案:http://www.jiuzhang.com/solutions/perfect-squares/

电面没多久被通知可以参加OnSite了,并约了OnSite的时间。

Onsite1

第一轮onsite问了一些计算机基础知识方面的问题和一道算法题。

1.给出一个数组,包括一些会议的起始时间和终止时间,判断一个人能否参加所有的会议。

LintCode原题链接:http://www.lintcode.com/zh-cn/problem/meeting-rooms/

参考答案:http://www.jiuzhang.com/solutions/meeting-rooms/

onsite2

这一轮问了两道算法题:

1.给出:

class Throttler {
int qps;
public Throttler(int qps) {
}
pubilc boolean allowAccess() {
}
}

实现速度限制器,allowAccess(),返回当前的时间是否允许

例如:

qps is 2

request1 time 0.0 return true;

request2 time 0.5 return true;

request3 time 0.6 return false;

2.最小字串覆盖

LintCode原题链接:http://www.lintcode.com/zh-cn/problem/minimum-window-substring/

参考答案:http://www.jiuzhang.com/solutions/minimum-window-substring/

这道题目稍微花了点时间想,但最后还是做出来了。

onsite3

第三轮onsite的时候给的算法题一共有三道。

1.给出单核CPU日志,解析日志,日志中的每一行都有3列:
工作名(String)开始/结束(boolean)的时间戳(long)
名称(String)开始/结束(boolean)时间戳(long)
比如:

f1 start 0

f2 start 2

f3 start 4

f3 end 5

f2 end 8

f1 end 9

对应输入的返回值:

f1 : 3

f2 : 5

f3 : 1

2.在终端中输入一个文件名,然后按“tab”,要求找到与目标文件匹配的最小的字符串长度。

3.编写一个可以由多个线程访问的计数器。每访问一次,计数器+1

onsite4

这一轮没太聊其他的,面试官看起来有些严肃,上来之后先问了问之前几面的感受就开始做题。

1.旋转链表

LintCode原题链接:http://www.lintcode.com/zh-cn/problem/reverse-linked-list/

参考答案:http://www.jiuzhang.com/solutions/reverse-linked-list/

2.层次遍历二叉树

LintCode原题链接:http://www.lintcode.com/zh-cn/problem/binary-tree-level-order-traversal/

参考答案:http://www.jiuzhang.com/solutions/binary-tree-level-order-traversal/

3.给定一个字符串,逐个翻转字符串中的每个单词

LintCode原题链接:http://www.lintcode.com/zh-cn/problem/reverse-words-in-a-string/

参考答案:http://www.jiuzhang.com/solutions/reverse-words-in-a-string/

4.如何使用4G RAM对磁盘中100G的文件进行排序

四轮现场面下来,发现snapchat非常看重算法和编程能力,而且snapchat现场面时给的算法题数量相比之前面试过的其他公司也多一些,所以面试前一定要好好刷题,提升一下做题速度。不然像我第4轮遇到这么多题目,必然要跪。

你可能感兴趣的:(Snapchat 面经(电面+onsite))