compass 电面

karat 面的, 先详细问了project 20分钟左右,然后一个二维0 -1数组。0为路,-1为墙,

  1. 给个起始点,找出起始点4个方向available的点。(easy
  2. 给个起始点,终点,返回是否通过起始点访问所有的0;(dfs, union find都行,我用的dfs
  3. 给个起始点,终点,数组里有1,返回不重复访问的,访问所有1,从起始点到终点的最短路径。(bfs

已拿onsite.

1 Like

刚⾯完,⼤概两个星期以前海投的,hr几天后联系。karat电面,⾯试官是韩裔妹子,看linkedin居然是MIT的本科。先是问了了我认为最困难的项目,然后两道题。

若⼲个pair,(parent, child),都是int,找出只有⼀个parent的child;
followup,给两个element,判断是否有common ancestor。

第二轮店面:
先聊了大概15分钟的project
地⾥出现过的⼀道题:一个2D矩阵,0代表open可以走,-1是墙不能走。

1, 给⼀个start 坐标,返回它在矩阵中上下左右available的点
2, Given a board and an end position for the player, write a function to determine if it is possible to travel from every open cell on the board to the given end position.
3, (我知道有三但是做完2没时间了了。。。也就没被问)来⾃地里的⾯经:“3. 给个起始点,终点,数组里有1,返回不重复访问的,访问所有1,从起始点到终点的最短路径(bfs)。”

之前⼀直在准备其他几道面经了,这个没啥印象看到的时候还楞了一下,后来发现我总结的⾯经里确实有这道题。。。中间连问带写再加test都不是很快,导致做完第二题就没时间了。 这种情况我是不是申请下redo⽐较好=。=

他们⻄雅图分部现在大概⼆十个码农,hr说打算扩张到100,不过前⼏天看一篇帖子说他们不招OPT,我只能当练手了,有兴趣的可以去试一下。

找的师兄推荐的compass, 题⽬不是很容易,但是⾯试官似乎认为很简单。

Four fours。 给定任意四个数,让你⽤加减乘以及括号来算出target number的所有表达式

⽐如 0, 1, 2, 3, target number = 6

返回所有为6的表达式 0+1+2+3 = 6

⽤的递归,但是保存中间结果的时候被指出空间使用过多,于是改成了使⽤python里的generator,⽤的yield