Amazon SDE-1 面试经验 | 2020 年世界女性
第1轮:
Q1) 给定 Excel 工作表中的列号,找到列名。
https://www.geeksforgeeks.org/find-excel-column-name-given-number/
Q2)给定一棵二叉树,找出从一个叶子节点到另一个叶子节点的最大和。
https://www.geeksforgeeks.org/find-maximum-path-sum-two-leaves-binary-tree/
Q3) 修改Facebook的好友请求操作,增加一个条件,一个人只有至少有1个共同好友才能向某人发送好友请求。
在这里,面试官要求使用适当的 DS 来存储朋友列表。我使用邻接表表示并在两个列表中搜索共同值。
第 2 轮:
Q1) 给定一棵二叉树,执行树的 Zig-Zag 级别顺序遍历。
https://www.geeksforgeeks.org/zigzag-tree-traversal/
Q2) 给定具有数百万个节点的树 T1 和具有数百个节点的树 T2,检查 T2 是否是 T1 的子树。
Q3)接口和抽象类之间的区别。
我编写了一个Java代码来解释可以使用它们的不同场景。
Q4) DBMS 中的读写器冲突。
第三轮:
这一轮从项目讨论开始。我解释了我的项目,他问了一些与它相关的问题。
Q1) 您从亚马逊购买了产品,现在希望退货。您所在地区有 N 个提货代理,您必须返回最近的 K 个。
我首先通过对距离进行排序并返回第一个 K 值来解决它。面试官要求我优化解决方案。我使用最大堆解决了它。
Q2) 给定一个字符串字典和两个字符串s1 和 s2,通过从字典中选择单词检查是否可以从 s1 到达 s2。在每个步骤中,您一次只能更改 s1 的一个字母。
例如。字典 = {猫,蝙蝠,拍,但是,小圆面包,太阳,双关语,放}
s1=猫,s2=太阳
答案:cat->bat->but->bun->sun
或 cat->pat->put->pun->sun
我通过为每个字符串创建一个邻接列表然后 DFS 来检查 s2 从 s1 的可达性来解决它。
第四轮:
这一轮从讨论上一轮提出的所有问题开始。
Q1) 求给定n叉树的直径,返回该直径的两端节点。
我首先解决了二叉树的问题,然后扩展了 n 叉树的解决方案。
Q2) 当您输入 www.amazon.com 时会发生什么?
对 DNS、ARP 和 TCP/IP 堆栈进行了长时间的讨论。
Q3) 什么是死锁?发生死锁的条件是什么?
Q4) Http 与 Https
面试官真的很热情,也很友好。我有一个了不起的经历,并且喜欢在所有这些回合中解决问题。面试时保持冷静的心态;它将帮助您快速解决问题。
结论:被选中!