SDE-1 的亚马逊面试体验
我一直在通过亚马逊工作门户网站申请 SDE 职位。最终,我收到了 2021 年 9 月针对我在 2021 年 6 月申请的申请进行在线评估的邀请。
第一轮:在线评估
- 有 2 个编码问题,然后是具有时间复杂度的方法。
- 第一个问题是拆迁机器人;我不记得第二个问题,但我使用优先队列解决了。第一个编码解决方案通过了所有测试用例,而第二个解决方案在一个测试用例中失败了。
10天后,我接到电话,面试安排在下周。
第 2 轮: F2F 技术面试
- 我被要求介绍自己和我的项目。然后我们跳到编码问题上。
- https://leetcode.com/problems/meeting-rooms-ii/
- 给定一个由开始和结束时间组成的会议时间间隔数组 [[s1,e1],[s2,e2],...] 找到所需的最小会议室数量。
- https://leetcode.com/problems/top-k-frequent-elements/ 或 https://www.geeksforgeeks.org/find-k-numbers-occurrences-given-array/
- 我被要求提供时间复杂度并优化代码。没有足够的时间,因为我花了更多时间来解决第一个问题,所以他让我停止编码并解释进一步的代码。我问他反馈,但他说HR会联系你。这是我的第一次编码面试,所以我很紧张,表现不佳。
第三轮: F2F技术面试
我在同一天进行了第二轮编码,我们进行了介绍,然后跳到了问题上。
- https://leetcode.com/problems/group-anagrams/ 或 https://www.geeksforgeeks.org/given-a-sequence-of-words-print-all-anagrams-together/
- 经过讨论,我被要求编写代码。
- https://leetcode.com/problems/number-of-islands/ 或 https://www.geeksforgeeks.org/find-number-of-islands/
- 写完代码后,有人问我关于 BFS 和 DFS 以及时间复杂度的问题。
这一轮非常顺利,面试官对我很满意,在第二轮之后,我在 30 分钟后立即接到了下一轮的电话。
第 4 轮: F2F 招聘经理面试
- 在介绍之后,我被问到设计问题。
- 编写程序来设计自动售货机。
- 在得到澄清后,我被要求编写代码。
- 有一个包含 0 和 1 的数字流。将所有 0 向左移动,将 1 向右移动。请注意,未给出大小。
- 解决后,我问fresher拿什么项目。
第二天我接到电话,最后一轮安排在 2 天后(星期一)。
第 5 轮: F2F 招聘经理面试
- 我们几乎没有介绍,然后我被问到 2 个编码问题。
- https://leetcode.com/problems/trapping-rain-water/ 或 https://www.geeksforgeeks.org/trapping-rain-water/
- 我解释并为蛮力方法编写了代码,然后我被要求对其进行优化。
- 与 covid 相关的是一个新问题,但它是一个经过修改的烂橙子版本。他告诉我要处理所有边缘情况,我编写代码然后他指出我错过了一些东西,然后再次阅读问题,然后我花了一些时间并相应地修改了代码。
5天后,我接到电话说我被选中了。
判决:选定