亚马逊面试经历 | SDE校园
日期:(2019年8月11日)
第 1 轮:第 1 轮包括 2 个编码问题和 28 个 MCQ。
第一个问题是给定一个一维数组和一个二维数组的二维数组,将给定的一维数组转换为给定维度的二维数组(假设总是可以将一维数组转换为二维数组)给定维度),求行最大和和列最大和的总和。这很简单。
第二个问题给出了一个字符串,例如 for。 httpfoorux 或 ftpbarrusds 将给定的字符串转换为 http://foo.ru/x 或 ft://bar.ru/sds 形式的 URL。这也是一个非常直接的问题。 MCQ 很棘手,测试了候选人的 C 和 C++ 语言知识。
该测试是一个 90 分钟的测试,在 Mettl 上进行。 bits/stdc++.h 是允许的,C++ 编译器是 g++ 5.4。大约 27 名学生通过了第一轮比赛。
第 2 轮:第 2 轮是直接的技术面试。面试官直接转到算法问题,没有问我的项目等。
第一个问题是检查给定的链表是否是回文。限制是您不能修改给定的列表,也不能使用任何辅助空间。
第二个问题是在二叉树中找到距给定节点 k 距离处的所有节点。
采访要求首先解释这种方法。在成功解释了方法之后,面试官要求用正确的语法在纸上写出问题的函数,并尽可能减少错误。
第三轮:第三轮也是直接的技术面试。
第一个问题是根据火车的到达和出发时间找出所需的最少站台数量。给定的时间列表不会按排序顺序排列,并且您不能对给定的时间数组进行排序。
然后他继续问我关于堆的问题。他让我为 heapify 编写一个代码作为最小堆。
在整个过程中,面试官都非常乐于助人。最终,12 名学生被选中在亚马逊进行为期 6 个月的实习。