最近我面试了不少公司,题目总结如下,供以后跳槽参考,刷题真心累,没办法,硅谷就这样,刷题成风。不刷绝对拿不到offer,刷了不一定能够拿到。看运气。尽人事,听天命!
Gusto: Phone interview:
/*
expected = {
id: 9876,
first_name: 'Tony',
last_name: 'Soprano',
account: {
bank_name: 'Bank Of America',
account_number: 12345
}
}
actual = {
id: 20,
first_name: 'Tony',
account: {
account_number: 12345,
balance: 500
}
}
[
[ '-', 'id', 9876 ],
[ '-', 'last_name', 'Soprano' ],
[ '-', 'account.bank_name', 'Bank Of America' ],
[ '+', 'id', 20 ],
[ '+', 'account.balance', 500 ]
]
*/
Yahoo Phone:
-
面试官一个字不打,要我写代码merge 2TB的大log文件,memory只有2MB,输入输出自己定义,而且要workable的代码。
Google Phone:
-
面试官一个字不打,要我自己定义输入输出,design data structure 判断两个人是不是直系亲属血缘关系。
FB Phone:
-
Merge two sorted Array
-
Inorder successor in BST.
TuburLabs Phone:
-
Input: [(‘jfk’,’mia’, (mia, oak), (sjc, jfk)] Output: [(sjc, jfk), (jfk, mia), ( mia, oak)]
Addepar Phone:
-
[523
984
167] 给你这样一个矩阵,只能移动9跟上下左右的位置互换,需要你写code计算出最小的step能移动成:
[123
456
789]
Walmart Labs Onsite (5 round)
-
Spring framework , REST API Desgin
-
reverse linked list, (两种方法) + word search
-
print BST in level order (写成 hasnext, next 模式)
-
isvalid parentesis + isvalid 数学表达式,包括数字符号的,要valid。
-
system design : design FB, ( post status, post image, add friends, read feeds 四个功能)
Gofundme Onsite: (5 round)
-
Write sql to find user not in funds table; ( Two table: users table, funds (userid as foreign key) + IsMirror BST
-
Write Java Class: Rect class, Square class. (inheritance, super class)
-
IsValid sudoku, && Sovle Sudoku
-
Java , C#, C++ 各种知识点。
-
慧姐的电面题:docker send request machine id, and send back machine id. (类似 data strucutre design):
func1 - request machine, return the smallest id of the availabe machines
func2 - return machine, make the returned machine available
follow up: try to reduce space complexity
HighFive Onsite: (5 round)
-
详细问简历,OOD Black Jack.
-
Coding: Input Meeting Interval, 求最少的room能够满足meeting,两种情况:第一如果meeting如果是24小时之内的,如何解。如果不是24小时之内的如何解决。分别写代码。
-
SkyLine Problem. 讲清楚逻辑推理过程,并写关键部分的伪代码。
-
项目+behavior question
-
CTO面:各种项目和behavior。
Paypal Onsite: ( 5 round)
-
linux command : find ‘the’ replace with ‘The’
-
Top 4th salary in Empolyee table
-
Text Justification 变种,要求每个单词空格一个,然后最后超出了用”-” 来连接到下一行。
-
Reverse Array, LC 变种 (input k有正负数)
-
All possible String in Dictionary, 有正反方向;
-
isValid BST, + Delete Nth node in LinkedList.
-
Design 单机棋牌游戏,注重算法和思维。(非system design的思维,主要考察思维和算法的设计)
Ebay Onsite: ( 5 round)
-
write one function mapping “2w3d5h8m9s” to “2 Weeks 3 days 5 hours 8 minus 9 seconds”
-
matrix 计算面积,level order travel,
-
给你一个string, 输出一个可能有dictionary分割成的间断string
-
valid expression表达式(含加减乘除和数字),然后要计算出来。
-
给你一个list of point,让你计算是否所有点是否对称。
-
设计一个系统,判断是否是这样的数(跟happy number类似)153 = 1^3 + 5^3 + 3^3,然后还要写代码。
Goupon Onsite: (6 round)
-
System Design: Find top 100 most fre number in 1M, 10TB Data. + Coding: Top K quick select 算法。跑test case给他看。
-
Mgr Interview,问项目和background skill set
-
Coding: “GoundTruthBad” “goundTruthBad” “gound_truth_bad” 三种输入,design一个class,可以相互转换。
-
给你一个input excel,里面是人员工资w2, 每个人会submit自己的工资单,然后设计一个系统,可以找出哪几项是假的工资记录。写如何找出说谎item的代码。
-
Card shuffle + isvalid BST.
-
CDEBF_A 代表车位,_代表空车位,写代码最小的minimum step move车位成ABCDEF_ + Behavior
Amazon Onsite: (5 round)
-
Coding: Design FIFO cache + Behavior
-
Coding: first appear char in String, Follow up: 如何做到只扫一遍 + Behavior
-
System Design: Design 支付系统 Follow up: 如何防止重复付款,network断了怎么办,怎么样保证只创建一个pay object。+ Behavior
-
Coding: 机器人 I , 机器人 II, + Behavior.
-
System Design: Image request System. ( From simple version to large scale) 考察分布式系统的设计和数据库和cache的设计。+ Behavior
Linkedin Onsite: (5 round)
-
Coding: I: Add Node in BST. II: Level order print BT. III: Find celebrity. Follow up: 如何写unit test, 如果给你的api是固定的函数,但是图是一直变化的,你怎么写这个unit test。
-
System Design: Design 一个统计100million用户的 share URL的top 100系统,系统每1min request,需要提取出最近5min,1hr,1day的top 100.
-
Coding: I: Number of Islands. II: Find Leaves of Binary Tree.
-
Mgr Interview: Work Experience, Ads Knowledge, RTB.
- Communication: 讲工作的项目,让别人听懂细节,system Design scale up your current company system. (考察分布式知识).