由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 找工作总结以及G,FB,BB,snapchat等面经
相关主题
小弟痛下决心,想转cs,求各位建议zenefit 电面面经
关于leetcode上的一道题Storm8新鲜面经
励志故事?EE弱背景吊丝,找工作的经验和体会( F offer )我也来贡献一个yelp面经吧
GOOG ONSITE 面试amazon电面面经
Palantir Embedded Analyst面经我也发个F家面试流水账。
报个电面面经,估计没戏了FLAGBR 面经+offer
CS H4 迟到的面经f电面面筋,
Google onsite归来电面没做出题。郁闷!!
相关话题的讨论汇总
话题: res话题: root话题: treenode话题: path话题: int
进入JobHunting版参与讨论
1 (共1页)
n***z
发帖数: 29
1
lz背景是EE phd,学校非常一般,准备情况是刷了leetcode,cc150之类的,还看了面
经和系统设计。因为用c++,也刷了EPI,不过现在看来EPI用处不大,lc已经包含了大
部分。
申请了一些常见的公司,拿到电面的有bloomberg,google,facebook,palantir,
snapchat,groupon,zenefits,还有pure storage之类不太对口的或者liveramp之类
根本不准备招人的。前面的这7个公司里,除了groupon其他都拿到onsite了。onsite结
果是,zenefits自己withdraw了,google拿到offer,其他的都挂了。自己总结反省过
,感觉找工作很看运气,而且春季对new grad比秋季难不少。
bb:
oncampus面了一轮,然后去总部onsite。
1,一个印度人和一个国人,印度人老是挑问题,还没写完就挑,按垂直层数打印一个
binary tree。还一题,2个array各挑一个数使差值最大,但2个数的index不能相同,
开始用dp做,后来2个array各存最大和第二大的,以及最小和第二小的就行了
2,manager轮,介绍demo,一个8bit int hash的题,面经上有
3,hr轮
g:签了nda,就不细说了。我碰到的题目中等难度,和面经上挺相似,没有系统设计,
一轮存介绍phd的research。感觉有2轮答的一般。
g的流程好长啊,我是3月底面的,5月中旬才出来结果,能拿到offer,第一感觉是运气
太好了,以后要多donation攒rp。多谢中午带我吃饭和最后一轮面我的国人大哥。
onsite中的一题:打印lca的path,我开始想one pass用一个flag来标志各种情况,但
才吃完饭脑子不清楚,没写出来,最后15分钟用two pass的写了下。。
Fb:
电面:reverse linkedlist的变种,简单
onsite:
1,deadlock设计,完全不会,什么daemon之类的乱说
2,华人大姐面的,很nice,题目是matrix里找4点一样最大的,当时忘记cc150上看过
,就现想的
3,很简单的2道题,一道忘了,一道是binary add好像
4,behavior,问了1小时,完全没问coding,晕
最后拒的理由是有更有经验的人,估计今年春天new grad招的少吧,倾向于找
experienced
Palantir:
电面就是lru cache
onsite:
上午3轮,1,设计distributed db,准备过
2,用dfs写bfs,不难,循环+递归,到指定深度停止,返回有没有下一层,面试官挺
nice,很满意
3,大概是找数组里所有出现过k次以上的数,只能用n/k的space,方法就是hash table
,满了就全部-1,==0的就删
中午吃完饭听完demo,一部分人就回去了,lz运气好,还留着,
4,信封只能套比它严格小的,问给一堆信封,求最多能用多少信封组成一个套起来的
信封,dp解之,n^2复杂度。后来面试官提示用lis解,想了一下,把长排序,求宽的
lis。继续问相同长的怎么办,把相同长的按宽逆序排
5,search in rotated array
Groupon:
电面1,glassdoor的面经上有,二叉树 encode and decode
电面2,面试官口音挺难听懂的,各种基础知识,一个简单的应用题,具体忘了,算法
很简单,就一个for循环
groupon的电面好像都是tech leader面的。挺奇怪的,明明写code挺快的,算法也挺清
晰的,却过不了。可能大牛们都注意到很多平时不注意的细节吧,但onsite不给就有点
不理解了,可能lz太弱了吧。
snapchat:
电面2轮,都是国人大哥,感谢放水。
1,inorder and postorder 恢复tree
2,phone number combination
onsite,基本都是面经上的,用自己电脑写,能run的都要run
1,亚裔mm,写个bloomfilter的class,不用写hash functions,不难,
2,国人大哥,给一个array,插入+*(),使最后值最大,用dp解
3,国人大哥,Amicable pair
4,印度人好像,给人的信息和manager,然后按层打印,类似于preorder,方法是先用
hash table建树并且存root,然后dfs preorder打印
一些体会:
palantir和snapchat的onsite是我答的最好的,而且非常针对的准备过behavior,还是
被拒了,看来startup挺难以捉摸的。我碰到的国人面试官都很nice,特别是年纪轻的
,国人还是挺互相帮助的,要是我以后面试国人也会尽量帮的。印度人层次不齐吧,
nice的占多数。
面试就像相亲,印象其实挺重要的,所以英语听说能力还是有必要提高的,lz英语不好
,有时候听不太懂或者表达的不是很清楚,对方多少会觉得烦,觉得你不容易交流,这
样就只能指望对方nice了。
S**********5
发帖数: 896
2
谢谢楼主了!
t****m
发帖数: 140
3
LZ很厉害,能拿到那么多onsite背景相当不错
谢谢分享
z***b
发帖数: 127
4
赞楼主分享面经。
题目是matrix里找4点一样最大的,
印度人好像,给人的信息和manager,然后按层打印,类似于preorder,方法是先用
hash table建树并且存root,然后dfs preorder打印
这两道题你能说详细点嘛?
n***z
发帖数: 29
5
第一个是cc150里hard的matrix那题
第二个是这个链接里的第二题
http://www.mitbbs.com/article_t/Recommend/31478533.html

【在 z***b 的大作中提到】
: 赞楼主分享面经。
: 题目是matrix里找4点一样最大的,
: 印度人好像,给人的信息和manager,然后按层打印,类似于preorder,方法是先用
: hash table建树并且存root,然后dfs preorder打印
: 这两道题你能说详细点嘛?

x******r
发帖数: 3489
6
cong!
b*****n
发帖数: 618
7
赞,感觉楼主答得不错,应该多拿几个offer
恭喜!
f*******5
发帖数: 52
8
感谢楼主发面经!请问这道题是什么意思
2,用dfs写bfs,不难,循环+递归,到指定深度停止,返回有没有下一层,面试官挺
nice,很满意
打印lca的path那道题可以在递归之间传一个vector,里面保存path,用c++写了一下
TreeNode* lca_p(TreeNode* root, TreeNode* a, TreeNode* b, vector& res,
bool& found){
if(!root) return NULL;
if(root == a || root == b){
res.push_back(root->val);
if(a == b) found = true;
return root;
}
vector l_res;
vector r_res;
TreeNode* l = lca_p(root->left, a, b, l_res, found);
TreeNode* r = lca_p(root->right, a, b, r_res, found);
if(l && r){
vector temp(l_res);
temp.push_back(root->val);
reverse(r_res.begin(), r_res.end());
for(int i=0; i temp.push_back(r_res[i]);
res = temp;
found = true;
return root;
}
else{
if(!found){
if(l) l_res.push_back(root->val);
if(r) r_res.push_back(root->val);
}
res = (l?l_res:r_res);
return l?l:r;
}
}
void lca_print_path(TreeNode* root, TreeNode* a, TreeNode* b){
vector res;
bool found = false;
lca_p(root,a,b,res,found);
if(found)
for(int i=0; i cout< }
n***z
发帖数: 29
9
就是用dfs的方法,先访问深度为0的,然后深度为1的,像bfs一样
你的代码好像没考虑a或者b是lca的情况,我觉得这题关键就是找到a或者b之后,要不
要继续递归,并且什么时候保存path吧,需要考虑多重情况。two pass的方法就是先找
lca,看是不是a或者b,然后和你的code相似

,

【在 f*******5 的大作中提到】
: 感谢楼主发面经!请问这道题是什么意思
: 2,用dfs写bfs,不难,循环+递归,到指定深度停止,返回有没有下一层,面试官挺
: nice,很满意
: 打印lca的path那道题可以在递归之间传一个vector,里面保存path,用c++写了一下
: TreeNode* lca_p(TreeNode* root, TreeNode* a, TreeNode* b, vector& res,
: bool& found){
: if(!root) return NULL;
: if(root == a || root == b){
: res.push_back(root->val);
: if(a == b) found = true;

j**********3
发帖数: 3211
10
请问楼主系统设计怎么看的
n***z
发帖数: 29
11
看的版上以前的总结帖

【在 j**********3 的大作中提到】
: 请问楼主系统设计怎么看的
j**********3
发帖数: 3211
12
赞!

【在 n***z 的大作中提到】
: 看的版上以前的总结帖
f*******5
发帖数: 52
13
多谢楼主回复!我的代码确实没考虑到a或者b是lca的情况。找到a或者b之后应该继续
递归,在递归左右子树的过程中保存path,因为当前节点的path取决于左右子树中是否
找到另一个b。下面是代码,假设a或b其中一个为空时候返回空path
很羡慕楼主拿到G的offer,能去G是我一直的梦想,衣带渐宽终不悔,为伊消得人憔悴
,hehe
int lca_p(TreeNode* root, TreeNode* a, TreeNode* b, vector& path){
if(!root) return 0;
vector l_path;
vector r_path;
int l = lca_p(root->left, a, b, l_path);
int r = lca_p(root->right, a, b, r_path);
vector temp;
if(l == 2) path = l_path;
else if(r == 2) path = r_path;
else{
if(l == 1) temp = l_path;
if(l == 1 || r == 1 || root==a || root==b) temp.push_back(root->val);
if(r == 1){
reverse(r_path.begin(), r_path.end());
for(int i=0; i }
path = temp;
}
return (root==a)+(root==b)+l+r;
}
void lca_print_path(TreeNode* root, TreeNode* a, TreeNode* b){
vector res;
int x = lca_p(root,a,b,res);
if(x==2)
for(int i=0; i cout< cout< }

【在 n***z 的大作中提到】
: 就是用dfs的方法,先访问深度为0的,然后深度为1的,像bfs一样
: 你的代码好像没考虑a或者b是lca的情况,我觉得这题关键就是找到a或者b之后,要不
: 要继续递归,并且什么时候保存path吧,需要考虑多重情况。two pass的方法就是先找
: lca,看是不是a或者b,然后和你的code相似
:
: ,

w******r
发帖数: 177
14
lz 牛的 看ID 还是一个地儿的呢
1 (共1页)
进入JobHunting版参与讨论
相关主题
电面没做出题。郁闷!!Palantir Embedded Analyst面经
G家onsite记录,难度呵呵报个电面面经,估计没戏了
【电面面经】Snapchat电面面经,求onsite信息以及攒人品CS H4 迟到的面经
FB Internship 挂在电面第二轮Google onsite归来
小弟痛下决心,想转cs,求各位建议zenefit 电面面经
关于leetcode上的一道题Storm8新鲜面经
励志故事?EE弱背景吊丝,找工作的经验和体会( F offer )我也来贡献一个yelp面经吧
GOOG ONSITE 面试amazon电面面经
相关话题的讨论汇总
话题: res话题: root话题: treenode话题: path话题: int