32g surface sold out# PDA - 掌中宝
h*k
1 楼
本周面了某L公司,说说经历吧。一共五场九个人,除第一场host manager一人半小时
,其它都是两人一master一shadow一小时。
1. 介绍公司产品,发展方向;本人介绍做的项目,most challenging project.
2. 150题8.2:imagine a robot sitting on the upper left hand corner of an NxN
grid. The robot can only move in two directions: right and down. How many possible paths are there for the robot?讨论时间复杂度空间复杂度。如何优化。
3. given two linked lists of object references, how to check if the third
one is a merge of these two, notice that different references could point to the same object, and the merge is not unique, e.g. lista = {A&, A&, B&}; listb = {C&, A&}; listm could be {C&, A&, A&, A&, B&} or {A&, A&, C&, A&, B&} or else, but not {A&, A&, A&, C&, B&}.
4. double sqrt(double d) 不能用牛顿法。
5. given a set of points on a cartesian plane, return maximum number of
points lying on the same line. Need O(n^2) in time complexity.
6. design bit.ly url shortening web service。算法设计,后端存储,中间层cache
,前端load balance,最后是web analytics。
7. 见team lead,讨论做的project具体细节。
周二面的,周四收拒信,不觉得特别可惜。
感受一:某公司做的是recruiting business,结果自己的recruiting process混乱不堪
。电面完了要on-site,然后两个星期没消息。突然一天说要我第二天去,只能改期了。面试中一个面我的人过半小时都没到,我只好打电话给recruiter临时换人。
感受二:工程师自我感觉良好,解题一定要按他们的思路来,当我提出其它解法时,不
加思索就被否决,写代码过程中频频被打断,非常不礼貌。
总体说L与成熟公司还有距离,未来看造化了。
------------------------------------------------------------------------
补充下:
3. 我开始说就是merge sort的变种,
bool isMerge(lista, listb, listm)
{
... ...
if ( lista.get(i) == listm.get(k) ) {
i++; k++;
} else if ( listb.get(j) == listm.get(k) ) {
j++; k++;
} else {
return false
}
结果被面试人教训了一顿。其实他期待的解法是从尾向头merge,一边merge一边删除
lista/listb/listm里面的元素。termination是listm.empty()。code可能漂亮
点,不过真不是唯一解法啊。
4. 要分d<0, 01情况。然后写binary search代码的时候,面试人说这样收敛
不够快,反复打断我。
6. bit.ly url shortening web service 就是:
1. 用户输入url,返回短的bit.ly url。比如:www.google.com,返回bit.ly/G。
2. 用户访问bit.ly url,redirect到真url。比如 http://bit.ly/G -> http://www.google.com。
这题主要考系统设计,没要写具体算法。
,其它都是两人一master一shadow一小时。
1. 介绍公司产品,发展方向;本人介绍做的项目,most challenging project.
2. 150题8.2:imagine a robot sitting on the upper left hand corner of an NxN
grid. The robot can only move in two directions: right and down. How many possible paths are there for the robot?讨论时间复杂度空间复杂度。如何优化。
3. given two linked lists of object references, how to check if the third
one is a merge of these two, notice that different references could point to the same object, and the merge is not unique, e.g. lista = {A&, A&, B&}; listb = {C&, A&}; listm could be {C&, A&, A&, A&, B&} or {A&, A&, C&, A&, B&} or else, but not {A&, A&, A&, C&, B&}.
4. double sqrt(double d) 不能用牛顿法。
5. given a set of points on a cartesian plane, return maximum number of
points lying on the same line. Need O(n^2) in time complexity.
6. design bit.ly url shortening web service。算法设计,后端存储,中间层cache
,前端load balance,最后是web analytics。
7. 见team lead,讨论做的project具体细节。
周二面的,周四收拒信,不觉得特别可惜。
感受一:某公司做的是recruiting business,结果自己的recruiting process混乱不堪
。电面完了要on-site,然后两个星期没消息。突然一天说要我第二天去,只能改期了。面试中一个面我的人过半小时都没到,我只好打电话给recruiter临时换人。
感受二:工程师自我感觉良好,解题一定要按他们的思路来,当我提出其它解法时,不
加思索就被否决,写代码过程中频频被打断,非常不礼貌。
总体说L与成熟公司还有距离,未来看造化了。
------------------------------------------------------------------------
补充下:
3. 我开始说就是merge sort的变种,
bool isMerge(lista, listb, listm)
{
... ...
if ( lista.get(i) == listm.get(k) ) {
i++; k++;
} else if ( listb.get(j) == listm.get(k) ) {
j++; k++;
} else {
return false
}
结果被面试人教训了一顿。其实他期待的解法是从尾向头merge,一边merge一边删除
lista/listb/listm里面的元素。termination是listm.empty()。code可能漂亮
点,不过真不是唯一解法啊。
4. 要分d<0, 0
不够快,反复打断我。
6. bit.ly url shortening web service 就是:
1. 用户输入url,返回短的bit.ly url。比如:www.google.com,返回bit.ly/G。
2. 用户访问bit.ly url,redirect到真url。比如 http://bit.ly/G -> http://www.google.com。
这题主要考系统设计,没要写具体算法。