📜  亚马逊WOW面试经历

📅  最后修改于: 2021-11-18 01:47:41             🧑  作者: Mango

我通过Amazon WOW drive 2020申请了SDE I的角色,一共5轮(1个编码测试+4个面试)。本来应该是线下面试的,但是因为新冠病毒大流行,我在网上进行了面试。

第 1 轮:第 1 轮是在线编码轮,包括 2 个编码问题和 28 个基于 C、C++、 Java、数据结构、算法和核心主题的 MCQ。第一个编码问题是将中缀表达式转换为后缀 https://www.geeksforgeeks.org/stack-set-2-infix-to-postfix,第二个问题是找到给定数组的均值、中位数和众数.这一轮进行了1小时30分钟。

我完全解决了两个编码问题。入围后,总共进行了 4 次面试,每次都是淘汰赛。每个人的时间固定为 60 分钟,每个人都涉及在面试官共享的 IDE 链接上编写完整的代码。对于每个问题,都必须说明时间复杂度。

采访:

面试一:面试官直接从编码问题开始。

  1. 一组大小为 k 的链表的交替反转。就像第一组应该颠倒,第二组应该相同,第三组应该颠倒,第四组应该相同等等。

    例子 :

    Input : 1->2->3->4->5->6->7->8,  k=2
    Output : 2->1->3->4->6->5->7->8
  2. 给出了两个字符串来查找匹配和不匹配的字符。

    例子 :

    Input : s1 = abc s2 = abd 
    Output : matching = 2 non-matching = 1

我能够在大约 55 分钟内解决这两个问题。面试官似乎很满意。我在 2 天后收到了第二次面试的邮件,并在 2 天后安排了面试。

面试 2:从面试官的介绍开始,然后是我的介绍,然后是 2 个编码问题。

  1. 如果无法到达某些中间字符串集,则以最少的步骤从一个起始字符串到达目标字符串。该字符串由从 0 到 9 的数字组成,它的工作原理类似于手提箱锁,其中从 0 可以有两个选项 1 或 9,类似地,我们可以从 1 转到 2 或 0。

    提示:使用 BFS 构造字符串图。

    例子:

    Input : 
    Source = 123
    Destination = 456
    steps = 9
  2. 找出所有大小为 k 的子数组的最大值和最小值之差的最大值。在这次采访中,我能够在短短 25 分钟内为这两个问题编写代码(也许祝你好运:-)。当天收到了第三轮的邮件,第二天就面试了。

采访三:

  1. 给定一个蚂蚁家族,其中有雌性和雄性蚂蚁,给出家庭成员的黑白交互,即,给出谁与谁交互,如果只有两种不同的性别,找出它是否是一个好家庭和一个家庭是否好相互影响。

    例子 :

    Input: number of ants = 6, Interactions = { 1-2, 3-4, 5-6}
    Output - Good family
    Input : number of ants = 6 Interaction = {1-3, 3-5, 1-5}
    Output - Bad family
  2. 下一个更大的元素

    以及有关 os(以示例解释银行家算法、抖动、死锁、信号量等)、DBMS(ACID 属性)、oops 和项目的问题。

第一个问题对我来说似乎很新。经过深思熟虑,我发现交互形成的图中不应该有任何奇怪的循环。我尝试编写代码,但面试不是很令人满意。然后他转到下一个问题。由于第二个问题是一个很常见的问题,我立即开始说解决方案,面试官问你知道这个问题吗,我说是。他让我在 2 分钟内写出没有任何错误的代码,我写了,但他可以从中找出一个错误 😐

这次面试后,我没想到会接到下一次面试的电话。但幸运的是,我在 6 天后收到了下一轮安排在第二天的邮件。

最终面试:从介绍、项目问题和行为问题开始。就像,举一个例子,你花了一些时间,自己想出了一些东西。

  1. 给定两个数组,仅当两个数组的平均值大于前一个平均值时,才将元素从一个数组移动到另一个数组,找出可以移动的元素
  2. 一些BFS相关的问题记不太清了
  3. 不使用另一个堆栈的堆栈中的最小元素

第一个问题,我很紧张,想不出办法。面试官很友好,帮我理解了方法,然后让我写代码。接下来的两个问题我能够解决。

大约 15-20 天后,我收到邮件,说我被选为亚马逊的 SIDE。我建议在面试时保持耐心和冷静。大声思考。面试官会帮助你。

祝你好运!!