c*****r 发帖数: 214 | 1 来自主题: JobHunting版 - G/F面经 cong!
现在从国内直接过来人的太多了,这条路比当年考T考G读phd的那批人真是平坦太多了
第一次写面经。。也不知道该侧重哪方面,就记录一下流水账吧。
1. 9月中旬进行了一轮facebook电话面试,一开始问了一些behaviour question,主要
是why do you want to work in fb? 这是我第一次面试,还是英文,没准备过,于是
随口乱说了一通。然后让我在colledit上写程序,其实就是拓扑排序,不到5分钟就写
完了,面试官在那边沉默了一段时间,然后说ok。然后就问了下简历上的一个项目,整
个过程不到30分钟。
fb电面完后第二天hr说10.1进行onsite,并告诉我why do you want to work in fb?这
个问题该怎么回答,另外还要我要好好练习英语口语。
2. fb电面完后马上google电话面试,早上7点半从美国总部打过来的,不过是用的中文
。面试题目就2道,都是比较常见的题目,在google docs里面写代码。一个题目是关于
穿线二叉树的,另外一个题目是copy a link list with a random... 阅读全帖 |
|
b***m 发帖数: 5987 | 2
我也觉得很欢乐,我是那种一面试嘴巴就停不下来的人,估计三哥都没机会插嘴解释是
prefix tree……最近做二叉树的题太多了,一听到tree就直觉开始往二叉树上靠……
下次不能这样了。lol |
|
|
O******i 发帖数: 269 | 4 你那个是Crackcode第四版或者更早版本中的定义,是错的,是充分而非必要条件。按
照那样太过于严格的定义,会把一些是平衡树的也判定为不是平衡树,造成false
negative。
在第五版中改正过来了。 |
|
|
j*****y 发帖数: 1071 | 6 一个数组只有0和1,第一个1出现前只有0,怎么找到第一个1(二叉搜索
)
这个怎么用 二叉搜索阿 |
|
b*****n 发帖数: 482 | 7 parent应该是中间的node,head~mid-1是左子树,mid+1到tail是右子树。你的code有
两个
比较大的问题。
1. parent 选了head,这样对于有序链表来说,即使生成了树也是degenerated tree,
还是一个链表。parent最好是选mid node,可以生成平衡二叉树。
2. recursived左子树的时候,pass了head,造成head node的left child指向了自己。
你如果pass了有序数组转BST的那题,可以把中间二叉树的生成过程打出来,就会比较
清楚整个思路了。 |
|
f*******7 发帖数: 943 | 8 自去年9月来,拖拖拉拉,今天才面上第三面。
估计终场前是1:1,这回是加时赛。
这回这哥们上来就扔题,没扯蛋,还好题是最近突击做过的,如果没做过当场那么短时
间肯定是想不出来。
1. 合并两个已排好序的数组
2. 判断一个树是不是搜索二叉树(BST)
3. 继续判断这个二叉树是不是平衡树
4. 优化3.
不知道communication会不会让我挂,他说啥我实在听不清,我说啥他也听不清, 有时
还有十多秒对面也没反应,估计是那哥们拿免提,而且还离的不太近。。。
新的一年祝大家找工作都顺利吧! |
|
P*******b 发帖数: 1001 | 9 完全二叉树给root节点求总节点数。
板上老题,想不出有什么诀窍来利用完全二叉树的性质。
thanks |
|
h*********o 发帖数: 230 | 10 上来没啥废话直接就问,你面intern?我说恩。
你的C++怎么样?答曰:以前用过,现在一直用java。
好我们来一些基本的C++。。。shiit。。
给写了一个class A{};
默认定义哪些函数。。。
啥时候需要constructor,destructor?
上面这个类需要一个destructor,怎么定义?
定义一个object,多大内存。。。
。。。。。
你回答一个问题,后面马上就follow另一个。。
C++都忘光了,围着上面这个空类,他就是狂问,都崩溃了。。
container 都包含哪些? 说一个问一个。。。都无语了。。
最后说到hashmap跟map,他问俩啥区别, 我说一个有序一个无序,插入查找时间不一
样blabala。。
然后问还有呢?。。我:。。。
你怎么implement map?我说map应该是树吧(我不清楚,隐约记得是logn的时间,所以
就猜树了),要我写,我直接就跪了,给你几个string 在map里怎么存储。写个结构。
map说完了,那你implement一个hashmap吧。一直狂汗。。我说就用array吧。。那你怎
么开内存。。array存什么... 阅读全帖 |
|
c*****4 发帖数: 1777 | 11 建二叉树的过程就是等于排序的过程吧?建二叉树需要额外的空间。对面试者而言方案
不够优化。我觉得面试者希望你回答快速排序,无需额外的空间。他们会说如果是大数
据,你没有足够的存储空间缓存所需的数据。举例说这个序列可以是1万亿个。
如果是谷歌面试,或者是L4面试,在大数据情况下有些特殊的近似算法(因为谷歌用得
最多,因为谷歌的数据”比较大“)。在多少置信度下返回值(真/假)是正确的。大
数据排序不现实。 |
|
d*******y 发帖数: 27 | 12 SDE for fresh grad, seattle onsite, 4 rounds.
第一轮,老印,abstract和interface的区别,我把Java语言里的区别说了半天,他不
满意。感觉他想听的是从面向对象角度出发有什么区别。coding题目:两数和,但是返
回下标最小的两个数。说了三种方法,最后让写hashmap的方法。这个题写的非常憋屈
。从一开始写函数声明的时候,老印就开始挑毛病。我返回的是一个长度为2的数组,
分别指示两个下标,老印不满意,问有没有别的方法,我说可以返回一个对象,老印还
不满意,no clue .. 瞬间感到阵脚完全被打乱了,后面的code写了一半,出bug了,老
印过来找bug,最后也没写完。
第二轮,老印,表达式求值。输入参数是一个后缀树。开始说可以后续遍历,将结果存
在栈里面,然后求值。老印说可以不需要申请栈。然后直接写了个后序遍历的方法,
code没问题。follow up,给一个反过来的后缀表达式,求值。很简单,逆序求值就好
了。
第三轮,美国人,是个新人,问的问题很水,问有关hashmap都知道什么。说了load
factor, col... 阅读全帖 |
|
t********e 发帖数: 1169 | 13 很幸运,全程没有遇到一个烙印,上周二onsite,现在还没回复,求分析。 fresh
phd, 手头有些offer.没有签任何协定,说题目应该没问题吧。。
Update: Onsite居然拖了一周回复,磕磕盼盼总算拿下了,具体package还没谈
——————————————————————————————————————
0.店面:台湾人 rsde还是applied researcher来着
0a. 一个数组里面找中位数, 复杂度
0b. 如果有m台机器,每个机器有n个数据,怎么找nm个数据的中位数,复杂度
就是个quickselect, 后面一问没怎么答好,我居然想到的是每台机器先排序,再找中
位数。。。
应该是答得很不好,在店面后两周才通知onsite.....还以为挂了呢
——————————————————————————————————————
上周2 onsite, 9:30am开始,先跟hr小聊了一下,然后等10:30的lunch interview
1. 老美,典型geek, 97年就到西雅图上班了,级别不知。 先做题目再到公司cafe吃饭
,吃饭时看窗外,从来不知怎... 阅读全帖 |
|
r*******e 发帖数: 7583 | 14 非常大的二叉树BFS和一般大的二叉树BFS差别在哪儿
同一层的节点都放不进内存?
最长 |
|
s*******s 发帖数: 1031 | 15 暴力算法是 n! 时间复杂度。
我想出的是DFS一个二叉树, O(2^n)的复杂度。
将这个distance 序列按照降序排序。O(n log n)
进入递归程序:
1. suppose d1, d2, d3,...dn是降序排列的数。
d1最大,所以d1肯定是两个端点的距离。 现在要确定下一个点。
d2或者d3将会是去掉最后端点(或者最前端点)的剩余的长度。
2. 对d2,如果能在d3, d4,..., dn中找到一个di,使得 di = d1 - d2,那么d2有可能是
一个合格的子问题,在原来的序列中去掉d1, di,递归调用。如果找不到这么一个di,那
么d2不是valid choice
3. 对d3,如果能在d2, d4, ..., dn中找到dj,使得dj = d1 - d3,那么,类似于2,
对d3进行递归调用。
如果d2, d3都无法找到相应的di, dj,那么这个序列是非法的序列,返回。
stop condition:
当序列是空的时侯我们找到了一格valid结果。
Time: O(2^n) 因为是对二叉树进行DFS。
求更好的解法! |
|
s*******s 发帖数: 1031 | 16 暴力算法是 n! 时间复杂度。
我想出的是DFS一个二叉树, O(2^n)的复杂度。
将这个distance 序列按照降序排序。O(n log n)
进入递归程序:
1. suppose d1, d2, d3,...dn是降序排列的数。
d1最大,所以d1肯定是两个端点的距离。 现在要确定下一个点。
d2或者d3将会是去掉最后端点(或者最前端点)的剩余的长度。
2. 对d2,如果能在d3, d4,..., dn中找到一个di,使得 di = d1 - d2,那么d2有可能是
一个合格的子问题,在原来的序列中去掉d1, di,递归调用。如果找不到这么一个di,那
么d2不是valid choice
3. 对d3,如果能在d2, d4, ..., dn中找到dj,使得dj = d1 - d3,那么,类似于2,
对d3进行递归调用。
如果d2, d3都无法找到相应的di, dj,那么这个序列是非法的序列,返回。
stop condition:
当序列是空的时侯我们找到了一格valid结果。
Time: O(2^n) 因为是对二叉树进行DFS。
求更好的解法! |
|
R*Q 发帖数: 179 | 17 还不知道结果,披个马甲攒人品吧
1. 二叉树的序列化和反序列化,节点的value是String类型
2. 找两个排好序的list的共同元素
5 -> 6 -> 6 ->8
4 -> 4-> 6 -> 6 -> 8
答案是 6 -> 6 -> 8
两个list长度差不多是怎么做? 长度相差非常大时如何做?
3. 有一个字典因为某种原因每个字符都被替换成一个别的字符了(但还是一一对应),
但是单词的顺序没有改变,比如
cat
coffee
common
变成了
dkc
dbhhzz
dbllbq
让找出的这个替换的规则(guaranteed to have a unique one)
4. 二叉树找中序后继
设计一个算法,在分布式系统中拷贝某一个节点上的某一个文件到其他所有的节点上,
要考虑时间代价和fault tolerance
5. 给定两个list of integer,问是否他们是否互相是对方的一个从排列
follow up: 如果不停的有新的list of integer过来,问是否这一列数以前出现过。
怎么存储?怎么查询?复杂度? |
|
m**********e 发帖数: 22 | 18 你的第四个题还是没有明白什么意思。什么是二叉树找中序后序?是给一个二叉树,让
输出一个中序序列,还有再输出一个后序序列?
第四题设计算法的题你是怎么回答的? |
|
p*******r 发帖数: 14 | 19 骑驴找马,没有特别想换工作,只是报着试一下的态度,稍微准备了一下。目前只拿到
一个Box Offer,比起版上各位差远了。觉得自己还是准备不充分,另一个感觉就是现
在和前一阵子比较来,各大公司都更挑剔了。面试光做对还不行,还要无错,快速,最
优。报Offer细节和面世题,回馈大家。希望大家都能找到理想的Offer。
个人情况,大IT公司工作5年多,在Seattle。Box offer, base 160K, stock option
15K。只是比较工资,如果把我现在的工资乘上1.15,新工资其实还要低一些。不知道
他家15K stock option值多少钱。
面试5轮技术,加上一个公司tour.都是常规题。
P1: 找出二叉树中所有uni-value子二叉树的个数。
P2: 一个链表,每个节点除了一个next pointer,还有一个random pointer指向一个随
机节点,如何clone这个链表。
P3: A series of appointments with start and end time. What is the numberof
conflicting ap... 阅读全帖 |
|
s********u 发帖数: 1109 | 20 还只是胡思乱想,也不太严谨。欢迎指正。(只讨论目前算法面试题一般涵盖的范围)
前言:
我知道大家都会说当满足最优子结构、subproblem overlap的时候可以用dp。但其实这
个条件个人感觉不太实用。
1.比如不overlap的时候也可以用dp,只是效率不提高,还增加了space cost而已。(
所以这个原则应该是“适合用dp”,而不是“可以用dp”
另外且不说最优子结构,overlap有时候也较难判断,比如boggle game这个,路径一定
是有重复的,但是
subproblem却未必,因为前驱的访问节点会影响后驱节点的"胜利条件"。
2.另外,就算是有overlap,从实用的角度来说,dp(bottom-up)未必方便实现。比如
用DFS来判定二叉树中是否有某个节点(cc150的4.7),bool cover( root, p )本身是
单纯的DFS访问,subproblem不存在overlap;但对整个问题而言,cover不停的调用,
对整个问题而言subproblem存在overlap。同样的还有4.1.因为这两个题目都在DFS中使
用了DFS,递归函数中调用了递归... 阅读全帖 |
|
h**o 发帖数: 548 | 21 leetcode 题:Given a set of non-overlapping intervals, insert a new interval
into the intervals (merge if necessary).You may assume that the intervals
were initially sorted according to their start times.
如果输入输出是list, 没法二叉找search,
如果输入输出是array, 没法二叉insert,
所以还是老老实实一个一个scan吧。
怎么面经上有人说用两分哪? |
|
g*****g 发帖数: 212 | 22 update 1:
历时2个月找工作,可惜没笔记,所以,题目基本忘光。
趁我还有印象,先透露一些。
Amazon:
面试的基本是国人弟兄,姐妹。如果看见,请见谅了。另外保持联系。
1) leetcode: word breaker 2
2) 定义class {property A, property B, ...} 每个property可以有不同的value
给定 该class定义的object 数组, 每个object有部分的property有value,其他
propety null
现在,要求返回一个List>, 把所有的object具有相同property value的
放一组。
比如
A{P1=1, P3=5} B{P2=1} C{P1=1,P3=5} D{P2=1, P3=1}
返回:
{{A,C},{B},{D}}
3)判断2颗二叉树,是不是相互 mirror
mirror的定义是: 把一课二叉树,对着镜子左右转置
4)设计一个key value的存储系统
-系统design
5)设计一个餐馆的订餐系统
-面向对象design
6)... 阅读全帖 |
|
l**z 发帖数: 78 | 23 1.烙印。感觉比较吊的样子。先让介绍过去工作经历。接着上一设计题:设计从本地计
算机访问爱死三中的文件系统。考点有本地数据结构,缓存,如何死盖尔。
2.白人小伙煮面,国人阴影。题巨简单。分层打印二叉树内容。每行前加行号。瞬间给
了一解法。白小伙认可,给限制条件:队列不能存空指针。那就存行号和指针,秒之。
白小伙问存行号浪费空间,有什么办法?遂用双队列。代码无虫。白小伙说没有料到这
么快结束。那就加点东西。如何控制某爱批的访问速率。
3.午饭。一印一白。行为问题。自觉相谈甚欢。列举了过去有挑战性的工作,本人的贡
献,如何处理各种情况,等等不一而足。
4.双白人。先挨条问行为问题,一边记录。代码题如下:
类 某某 {
公:
长整形 产生下一魔术数(长整型 埃克斯){}
私:
布尔 是魔术数吗(长整型 埃克斯); //已实现
};
问如何实现函数 产生下一魔术数。
先暴力算法。认可。然后优化,最后给出了用平衡二叉树查找和插入的方案,代码之。
认可,并称完美。
5.国人小伙
两数和,三数和,任意数和(说了递归处理,不置可否)。最后四数和。感觉莫测高深。
6.中年白人。继续设计如何限制某客户的访... 阅读全帖 |
|
J*****a 发帖数: 4262 | 24 你到底是指找工作呢,还是做研究?
计算机的phd和postdoc做研究时当然要用很多数学,从图像处理到信号分析,都是小波
变换,AI等方向也要数学
生物千老不算一份工作吧?不能和码工类比
学生物的去制药厂找工作,面试问你数学?
另外多说几句
你看版上面经写代码不需要数学,那是你看的层次浅。
最近版上有G家还不知哪家的一条真题说“健身房里有多个器械,还有多个障碍物,请
找出健身房里一点,使得这点到所有器械的汉密尔顿路径最短”,请问你不补补数学,
你会做这题么?可能连题目都看不懂吧?
其次,在写完代码之后,面试官都会问你复杂度,有些还会问你为什么。只不过大家写
面筋,懒得把这些写出来。你知道为什么二叉树lowest common ancestor的暴力解法(
最原始直接的解法,无parent指针)和判断二叉树is balanced的暴力解法(最原始直
接的解法)看上去差不多,但前者复杂度是O(n),而后者复杂度却至少是O(nlogn)?
我善意提醒你,你越不是cs出身,面试官越会问你这些 |
|
M*******a 发帖数: 1633 | 25 好了,上面有几个人看出来了,就是会有环,因为我写的是给下列结构让你按照二叉树
方法遍历,没说保证就是二叉树,我无聊哈。 |
|
r*******2 发帖数: 104 | 26
额,我忘说了一个条件,面试官当时说了是满二叉树,所以所有的leaf结点其实就是满
二叉树的最后一层,不然也不会想到用BFS了。不好意思~~~ |
|
x****B 发帖数: 103 | 27 你把这个链表想像成二叉树或者带父亲节点的二叉树。然后前序遍历?
doubly
. |
|
S******e 发帖数: 55 | 28 首先,返回所有给定等级的二叉树节点,例如,叶子的等级为0,叶子的亲爹等级为1
然后. 两个任意的树,不是二叉树,判断一个树是否是另一个树的一部分
然后. 设计一个google online doc,就是可以团队编辑的在线文本app
然后,就没有然后了 |
|
r*******k 发帖数: 1423 | 29 任意树和二叉树有一个一一对应关系
不知道能不能用上
然后先序+中序可以确认一颗二叉树
最naive的方法就是先找根,找到了就递归匹配。。。 |
|
r*******k 发帖数: 1423 | 30 来自主题: JobHunting版 - 一道面试题 二叉查找树?
那样就遍历树,只输出大于p小于q的叶子就行了吧
二叉树的话
是不是采用任何一种遍历方式,只输出叶子,
且当碰到p之后才开始输出
碰到q,就返回 |
|
l***m 发帖数: 16 | 31 找工作过程中从版面上大家的贡献获益良多,现在我也把我遇到的面试题分享一下。
A家:找的朋友递的简历,3月初电面,3月底onsite。
电面一轮两道题:1 两数和;2 二叉树是否为二叉搜索树。
onsite:
1.1 复制带有随机指针的链表
1.2 又是isBST,不过这次不让用recursive的方法
2.1 找小于N的素数
2.2 BST里第二大的数
3.1 类似text justification,但不用添加多余的空格,只用加n
3.2 实现priority queue
4.1 开始扯了很多小题目,最后用链表写stack和queue
F家:版上的大哥帮忙递的简历,感谢!
电面也是一轮两道题:1 字母矩阵里找给定的单词 2 两个单词是否只差一个字母,可
以删除,修改和添加
onsite:
1.1 给一次读4096B的函数 实现一个读取文件到给定文件的函数
1.2 对一个图像做水平对称 功能函数是每次要把1B的数据对称
2.1 三数之和为0
2.2 给定圆心和半径,改变圆上像素的值
3 设计arithmetic expression tree,节点可以是int,symbol或者o... 阅读全帖 |
|
x***j 发帖数: 75 | 32 自己的第一个onsite, 题目不难,目测已跪,攒人品发面经。 另外: 长期求各种内推
,地点不限, 不胜感激!!
第一轮电话面经在这里:http://www.mitbbs.com/article_t/JobHunting/32818751.html
第二轮电话面:
白人,说我只能给你25分钟,写两个题,于是特别紧张。
1)写个任意树的数据结构, 再写个search(int val)的函数,返回一个节点。
2)解sudoku,
3) 问了5分钟research, 然后5分钟回答问题。
当天告诉下周可以来onsite了。
1) 是个国人大哥, 人不在现场,Skype的。感觉大哥给的问题不算难。但自己还是太
紧张了,而且交流不太好,代码写的一塌糊涂。
题目1: 给一棵二叉树, serialize成字符串,
题目2: 给一个字符串, deserialize成二叉树。
2) 一个白人,
题目: 一串灯泡,实现 flip(int i, int j), isOn(int i)两个函数, 自己想数据
结构。followup 很多, hashmap, bitmap, tree 都用上了。
3)一个小印... 阅读全帖 |
|
t***t 发帖数: 6066 | 33 基本算法还是得知道。
俺以前面试都出个二叉数查询的基本题。起码你得知道二叉树吧
就这样,还有>70%的人答不上来。要知道这些人都是已经电话面试筛选过的。 |
|
f********a 发帖数: 165 | 34 看到别人的面经:
坐标系第一象限上加射线,接下来所有输入的数据都是不相等的整数,不用考虑任何
edge case。 想要这两个操作:1. insertX(x), insertY(y),比如insertX, 就
是现有的图上面加上x这条射线,象限会被插入的这些射线分成网格,每个格叫一个区
域。 2. find(x,y), 就是给个坐标,返回这个坐标所在的区域。可以返回区域的
id,区域的id自己定。用二叉树。
x,y是两个不同二叉树?Node里面存range? |
|
w****a 发帖数: 710 | 35 我LD最近面了一堆公司,下面发她的面经攒人品。基本都是电面和onsite混着发的。
Google:
1. Wildcard match
2. http://www.fgdsb.com/2015/01/25/peek-iterator/类似。写一个de duplicator,wrap 几个stream,输出的stream全是不重复数字。
3. 求一个stream,出现次数最多的数字。然后扩展到N个machine的情况。
4. 假设某个company在不同国家都有office,每个国家的office,如果是当地的假期,
就可以放假了。假设可以查询任意航班的信息,每个星期只能呆在一个地方,只有周末
的时候才能飞去别的国家。找一个放假天数最多的schedule。
5. LRU + 一些 C++问题。
6. 这题记不大清楚了。好像是Longest increasing consecutive sequence, 然后一
个Tree的该进版。求longest increasing consecutive path。
7. file system design。就是设计一个大数据的存取问题。存在di... 阅读全帖 |
|
i****7 发帖数: 26 | 36 电面1:
顺序统计树,找第K个节点。
电面2:
1)打印000到123所有的数,follow up,打印a到b所有的数(假设每一位都a<=b)
2)Next permutation
3)栅栏N个木片,每一片可以刷两种颜色,相临三片不能同色,问几种刷法。
Onsite:
1)一堆interval,有叠加,给一个值,查询在不在这堆interval里(会调用很多次)
Follow up, 给一个值,查询多少个interval包含这个值(会调用很多次)
(国人大哥面的,可能会看到这个帖子,非常感谢,做题的时候给了很多引导。)
2)一个有向图,找出互相指向的点对数,(e.g. A指向B,B指向A,算一对)
Follow up, 写一个类,这个图会变化(加点,删点,加边,删边),维护这样的
点对数。
Follow up, 扯了扯大数据时候怎么分配到各个计算机上。
3)论文演讲
4)家族树,每个点左右指针指向自己的父亲和母亲,每个点存对应二叉堆的索引。
A)给一个这种树,给每个点标出对应二叉堆的索引值。
B)任意给一个节点(不需要输入根节点),输出这个点所在的层数。... 阅读全帖 |
|
i****7 发帖数: 26 | 37 嗯,差不多,把二叉树看成二叉堆后,每个节点有个index,这个index存成节点的一个域 |
|
A*******e 发帖数: 2419 | 38 4)家族树,每个点左右指针指向自己的父亲和母亲,每个点存对应二叉堆的索引。
A)给一个这种树,给每个点标出对应二叉堆的索引值。
B)任意给一个节点(不需要输入根节点),输出这个点所在的层数。
C)任意给一个节点(不需要输入根节点),输出这个点和根节点的关系(e.g. 是
根节点父亲的母亲就输出“MF”)。
// 编码从0开始。
void SetParent(Node* root) {
if (root == nullptr) return;
root->id = 0;
SetParentHelper(root);
}
void SetParentHelper(Node* root) {
if (root->father != nullptr) {
root->father = root->id * 2 + 1;
SetParentHelper(root->father);
}
if (root->mother != nullptr) {
root->mother = root->id * 2 + 2;
SetPa... 阅读全帖 |
|
b******n 发帖数: 1629 | 39 版上看了些面经,至少把airbnb的电话面试题都给看到了,虽然最后把airbnb的onsite
推掉了,但电面直接碰上原题的感觉真的好tmd有成就感。最后回馈一下版面。
整体感觉,国人面试官真的都非常的nice,老外大部分也都很nice,甚至碰到的三哥三
妹都很nice,没有感觉恶的。个人感觉面试的时候还是要多说话,不要让面试官说话,
更加不要让面试冷场,这个还是挺重要的,否则面试官一尴尬,直接就觉得没有
chemistry,反馈不可能很好。
我自己由于刷题刷得太烂,根本不想刷,看着就烦,只是把ccr和leetcode答案给看了
几遍,一遍都没写过,别的网站看都没看。所以可能不适用刷题刷的nb的同志们。基本
每家公司每道题都有时间复杂度分析,建议注意。
airbnb电面两轮,一个是house robber,一个是csv parser。
fb电面也是两轮,一个maximum continuous sum for an array, career cup面经原题
,一个是简单的trie,还有一个是n个元素中求包含k个元素的组合,dfs做,follow up
提高performance,被国... 阅读全帖 |
|
A*******e 发帖数: 2419 | 40 * Multi task design
用户可以法请求要求某一个task在某一时间开始执行。这样的请求可能很多。设计一个
系统处理这样的请求。问如果处理系统是local的(和发请求的在一起)或者是remote
的有哪些设计上的不同。
这个没怎么实际做过,只能随便侃侃,简单写了几行伪代码。
汗,没看懂要设计啥。什么叫处理这样的请求?同一时间请求太多,资源不够咋办?
* Quad-tree intersection
一个quad-tree表示一个2D的黑白图,每个节点都是平行于坐标轴的矩形,节点的
value 0和1表示黑和白。如果一个节点全黑或全白就是叶子,否则就继续剖分成四份。
要求写一个函数求两个quad-tree的交。
这个比较简单,写了一个递归的程序,不确定是否有bug。
什么是两个树的交?
* Base64 encoding
先解释了一下何谓Base64 encoding(http://en.wikipedia.org/wiki/Base64),然后要求写一个函数将一个字符串按Base64编码。
用位操作实现,写了简单的代码,不确定是否是他想要的答案。
* Swizzle so... 阅读全帖 |
|
a********5 发帖数: 1631 | 41 【 以下文字转载自 Working 讨论区 】
发信人: lidichen (火木年华), 信区: Working
标 题: 吐槽个烙印面试官
发信站: BBS 未名空间站 (Sat Aug 29 12:01:10 2015, 美东)
昨天面试,遇到一个烙印是我见过的最奇葩的烙印。
让我解释我做什么,我说我implement model,这货一直让我解释什么叫implement。
啥问题也没准备,估计就自己网上看了一些面试题,但是自己也不知道怎么做,然后随
机的问。
写个翻转二叉树,我做出来了,他看不懂递归是啥。我交换两个node用了中间变量,他
看不懂这三行代码,我都觉得无语。
完事儿了又让我写一个二叉树路径sum,又看不懂递归,看不懂 return a == b,问我
这是啥意思。
怎么删除单链表中某个节点,如果只有这个节点的reference,我答把下一个节点以后
的值依次往前挪动一个。另外这货听不懂我问是不是要整个object移动还是只是value
就可以了,说反正你只要work就行,我不懂你的问题。
他见难不倒我,又问怎么sort一个大文件,还没说,他又说,你还是写删除单链... 阅读全帖 |
|
s*******s 发帖数: 1031 | 42 170K base
380K shares offer (分4年给)
45K sign on
公司现在估值1.5B。个人感觉是非常有前途的公司,但是行业竞争很激烈,LZ所在的公
司有组已经开始在做。 recruiter忽悠说公司很快就能达到5B,我的package会升值很
快。估计讨价还价的余地不大。
LZ现在G工作,现在package ~320K。这个package值得冒险吗?在考虑是在G再拼几
年拿T6再走还是出去冒险。
这里隐去这个startup的名字,因为版上很多他家的员工,我就是被内推进去的,给off
er的时候人家清楚说了要保密的,面试题目也签了NDA协议。不想以后见朋友难堪。
面经:
1. 一个池塘,有些柱子,这些柱子的高度保存在一个m*n的matrix中,开始水的高度为
0,只有当水的高度漫过一个柱子的高度时,这个柱子的位置是可以通过的,水每天升高
1米,问最少经过多少天可以从位置(0,0)到右下角。
2. 重构二叉树: 给个数组parent[0...n],每个的parent[i]是节点i的parent的index
,写程序重构这个二叉树。
3. 实现 hash tab... 阅读全帖 |
|
f*******r 发帖数: 976 | 43 这个也太lowball了。
170K base, 380K shares offer (分4年给) 45K sign on
公司现在估值1.5B。个人感觉是非常有前途的公司,但是行业竞争很激烈,LZ所在的公
司有组已经开始在做。 recruiter忽悠说公司很快就能达到5B,我的package会升值很
快。估计讨价还价的余地不大。
LZ现在G工作,现在package ~320K。这个package值得冒险吗?在考虑是在G再拼几年拿
T6再走还是出去冒险。这里隐去这个startup的名字,因为版上很多他家的员工,我就
是被内推进去的,给offer的时候人家清楚说了要保密的,面试题目也签了NDA协议。不
想以后见朋友难堪。
面经:
1. 一个池塘,有些柱子,这些柱子的高度保存在一个m*n的matrix中,开始水的高度为
0,只有当水的高度漫过一个柱子的高度时,这个柱子的位置是可以通过的,水每天升
高1米,问最少经过多少天可以从位置(0,0)到右下角。
2. 重构二叉树: 给个数组parent[0...n],每个的parent[i]是节点i的parent的index
,写程序重构这个二叉树... 阅读全帖 |
|
z*********n 发帖数: 1451 | 44 来自主题: JobHunting版 - G一个新题
这题确实应该是kd tree一个典型应用,但是如果自己对如何实现kd tree不熟,不敢乱
说啊,万一让实现一个,搞不出来就挂了。
我以前有个同学就是面试时扯了一下平衡二叉树,然后人家就问你知道哪些平衡二叉树
,他就说了AVL和RBTree,然后对面说,那你随便实现一个我看看吧,然后。。就没有
然后了。。 |
|
z*********n 发帖数: 1451 | 45 这题感觉就是要生成不同叶子节点高度的二叉树,找一个最能匹配tasks的一组。
但是俺不知道怎么高效生成不同叶子节点高度的二叉树。。。 |
|
a****i 发帖数: 1182 | 46 说实在的,做到上面有人罩着下面有人托着我觉得有点累
但是你对人公事公办,人也对你公事公办
面试不只是技术,就算是技术,你也不可能面面俱到
写bower的那位不就死在反转二叉树了?
你会反转二叉树觉得自己很牛?那我要你写个bower |
|
g*********e 发帖数: 14401 | 47 也不是没有。做eda 要用递归和dp,还有topi sort
做parser (不一定是编程语言的parser,sql parser或者自己invent出来的query
language parser) 要用递归。
二叉树就更多了。做ml, 要搞一个压缩boosting tree的算法 那就是leetcode里serdes
二叉树。
反正做后端的话,每家公司都会遇到类似的活,多多少少
打你 |
|
l******n 发帖数: 577 | 48 昨天面试,遇到一个烙印是我见过的最奇葩的烙印。
让我解释我做什么,我说我implement model,这货一直让我解释什么叫implement。
啥问题也没准备,估计就自己网上看了一些面试题,但是自己也不知道怎么做,然后随
机的问。
写个翻转二叉树,我做出来了,他看不懂递归是啥。我交换两个node用了中间变量,他
看不懂这三行代码,我都觉得无语。
完事儿了又让我写一个二叉树路径sum,又看不懂递归,看不懂 return a == b,问我
这是啥意思。
怎么删除单链表中某个节点,如果只有这个节点的reference,我答把下一个节点以后
的值依次往前挪动一个。另外这货听不懂我问是不是要整个object移动还是只是value
就可以了,说反正你只要work就行,我不懂你的问题。
他见难不倒我,又问怎么sort一个大文件,还没说,他又说,你还是写删除单链表节点
那题吧。
刚提笔写了一行,又说算了不用写了,还是说大文件吧。刚开始说又改主意了,你说说
正常怎么排序吧,quick sort,merge sort, heap sort,问我最快是哪个,我说
quick sort,他跟我说绝对不是... 阅读全帖 |
|
f*********r 发帖数: 1233 | 49 我的天线情结 之二
上次提到,我们抢购了3根拉杆天线。第一根,被我用来装了调频收音机,带到大学用
了两年。
这个时候,北京还没有象音乐台、文艺台之类的调频台。国际广播电台的easy FM也不
是立体声的。北京这样的大城市,到我上大学那年,只有两套立体声广播:中央3套和
北京5套(北京音乐台的前身)。节目基本上是民族声器乐、戏曲、古典音乐、轻音乐
。流行歌曲是断然没有的。但有一个例外,就是abba,不过被编排在轻音乐里。
虽然门类不算全,形式也不算花(基本上报了曲名就放),但我敢说,那几年听的东西
对我一生影响深远。我最喜欢的是三个栏目:
激光唱片音乐会、轻音乐节目、晚间音乐。
当年还不懂什么叫激光唱片(不过就是cd嘛),只是觉得激光很牛叉,用它制成的唱片
也应该是最牛叉的作品。果然不负众望。当年中央台还确实收了一批很好的cd,后来迷
了“发烧”以后才知道,那叫“天碟”。不知道是文化交流甚密,还是编辑情有独钟,
播放最多的是柏林爱乐和卡拉扬的唱片。我听着这样的天籁之音,就如同陈凯歌在《和
你在一起》里面描述的那般陶醉。实际情况没有那么美好,听得呆了,还从嘴里掉过饭
粒,挺傻的。有的时候, |
|
z****e 发帖数: 3810 | 50 比赛:火箭vs爵士game4
金额:2285
火箭赢,大熊赢叉摸2285
火箭输,叉摸赢大熊2285
=============================
第一场以大熊胜收场 |
|