snapchat 电面合集

原帖地址:一亩三分地

https://oj.leetcode.com/problems/trapping-rain-water/valid sudokuhttps://www.hackerrank.com/tests/45b8ts1r
1.leetcode那道soduku solver
2.写个数据结构,完成各个member function,什么set, get, insert,delete啊
2. 给一个文件,中间有若干A,B string,找最小距离(任意AB之间)。我就开始描述我的思路:先KMP找indice(说了两遍,她似乎不知道KMP),花了点时间写KMP的思路;结果她说算了,直接用std lib吧。我就用两个vector存储这些indice,如果数据量不大,就两个loop吧。她不满意,问有更快得么,我说都是sorted indice,肯定可以的,于是用了一个for loop,并在里面update另一个指针位置(用了while loop)。她最后说期待看到的算法是merge两个vector。我说那需要标记index吧,能用hashmap么,她回答可以。于是我写了merge然后找最小距离的code。这时候她说她收到一个notice,要去开会什么的,此时时间大概4:50多,也就是原定结束时间。她说你有啥问题么,于是问她觉得我的performance如何。感觉她就不是很positive,说什么大体不错,但是没有一下nail最好解法,而且代码可读性(主要是变量名)也不是太好。http://baozitraining.org/blog/2014-star-startup-interview-snapchat/
开始做题:题目就是如果设计一个“大”数,让其可以表示无限大的值,并实现“大”数的加法。应该算是常考题,用string表示大数,本质上就是实现valid string number加法,速度写过。输出Excel所有的列名,真的不是简单的进制转换这个题真的是把我坑惨了,先是写了一个函数求当前列的下一个列名,这个比较容易bug free,接下来面试官让换一种思路,果断写进制转换,但是从低位向高位求的进制转换对此题并不太适用,需要做一些修改,因为列名从A开始计数,也就相当于1,而进制转换的数字都是从零开始。加上当时几天状态不好一紧张,直接到结束也没把这几行的代码写对,所以当天晚上就果断的收到了拒信。有兴趣的同学可以写写试试
http://www.1point3acres.com/bbs/forum.php?mod=viewthreadtid=113999extra=page%3D1%26filter%3Dsortid%26sortid%3D311%26sortid%3D311
1. sudoku validator
2. 他原话是 用Array实现Arraylist,翻译成c++就是 用数组实现vectorhttp://www.1point3acres.com/bbs/forum.php?mod=viewthreadtid=95534extra=page%3D1%26filter%3Dsortid%26sortid%3D311%26sortid%3D311
就是valid sudoku, 然后谈一下自己的research.http://www.1point3acres.com/bbs/forum.php?mod=viewthreadtid=113109extra=page%3D5%26filter%3Dsortid%26sortid%3D311%26sortid%3D311
WORD LADDER I,http://www.1point3acres.com/bbs/forum.php?mod=viewthreadtid=111742extra=page%3D7%26filter%3Dsortid%26sortid%3D311%26sortid%3D311
http://www.1point3acres.com/bbs/forum.php?mod=viewthreadtid=111742extra=page%3D7%26filter%3Dsortid%26sortid%3D311%26sortid%3D311
http://www.1point3acres.com/bbs/thread-91790-1-1.html
. From 1point 3acres bbshttp://www.1point3acres.com/bbs/thread-106385-1-1.html
http://www.1point3acres.com/bbs/thread-106201-1-1.html
http://www.1point3acres.com/bbs/thread-102572-1-1.html
http://www.themianjing.com/tag/snapchat/
////////////////////////////////////////////////////////////////leetcode:2sum, 3sum, 4sum建一个树
//////////////////////////////////////////////////////给一个文件,中间有若干A,B string,找最小距离(任意AB之间) check : 排序两个文件,使用merge的方法求字符串之间的距离(nlogn)输出Excel所有的列名:求当前列的下一个列名,2.使用进制转化的思想
转为十进制,加一,再转为26进制直接写26进制转化,如果超出原长度,直接返回全A 3. 从东北往西南打印矩阵(example)遍历第一行和最后一例,打印的坐标为(i + 1 , j – 1)4. 问了一个字符串比较问题,说很多用户名都会重复,通过后面的数字来区分,但是在排序的时候严格按照字符串排序就会出现 abc10 排在 abc2 前面(因为‘1’比‘2’要小),但是事实上他们想要达到的效果是 abc10 排在 abc2 后面(10比2要大),于是让写一个字符串比较函数。字符串少的时候,使用insertion sort, 减少stack字符串多的时候,使用merge sort两个string比较的时候,字母部分比较按字母表顺序。数字部分比较去掉前导0,比较长度,长度相同,按字母表顺序比较。5.我面的题目是实现一个bloomfilter 设计一个hash函数,根据传入的整数值不同,产生不同hash结果, 同一个对象,通过不同的函数映射到多个位置,将这些位置保存为1 删除,可在每位上使用计数器/////////////////////Behavior1. 介绍一些你自己.