📜  亚马逊专访 |第 122 组(校内实习)

📅  最后修改于: 2021-11-10 06:31:41             🧑  作者: Mango

我的面试包括3轮。 1 次在线和 2 次面对面回合。

在线回合
在这一轮中,有 20 个 MCQ 需要解决和 2 个编码问题。在 20MCQ 中,有几个问题是关于定量能力、关系、操作系统、DBMS、数据结构等的。每个错误答案都有负面标记,所以我只尝试了 15 个我确定的问题。

Q1- 找到字符串的第一个非重复字符。

Q2- 给定一个二叉树,其中每个节点都有一些权重。您必须返回二叉树中的最大权重。

最大权重 = 根节点的值 + 其左子树和右子树的值。

Ex   2
   /   \  
  -1    3
Output = 4

在这一轮之后,33 名学生被选为 face 2 face round。 😀

第 1 轮 F2F(40-50 分钟)
Q1 – 给定一棵二叉树,其中左子树是右子树的镜像。所以你必须检查树是否对称(结构明智)。在)

Ex    - 1
     /   \
    2      3
    \     /
     4   5
Output - Yes

Q2 – 给定一个已排序的二维矩阵,您将获得一个值,您必须在矩阵中搜索该值。我给了他两个解决方案。 O(行 + 列)

Q3——给定两个排序形式的数组。第一个数组在其末尾有一些等于第二个数组大小的空白空间。您必须在第一个数组中以最聪明的方式合并两个数组。带有辅助空间 O(1) 的约束。

例如 – arr1[9] = {2,4,5,7,8,_,_,_,_};
arr2[4] = {3,6,8,9};
合并 arr1 后应为 = {2,3,4,5,6,7,8,8,9};

对于每个问题,我都被要求编写处理所有极端情况的工作代码。这一轮我给面试官留下了很深的印象:)。然后我问了他一些问题,比如——实习生如何为亚马逊声称自己是最以客户为中心的公司做出贡献等等。


第 2 轮 F2F(70–80 分钟)

这次采访的是一位资深人士。
Q1 – 给定一个非常大的 n 叉树。根节点有一些信息,它想要传递给它的所有子节点到叶子,并限制它一次只能将信息传递给它的一个子节点(将其视为一次迭代)。现在在下一次迭代中,子节点可以将该信息仅传递给它的一个子节点,同时,子节点的父节点(即根)可以将信息传递给其剩余的子节点之一。以这种方式继续,我们必须找到将信息传递给树中所有节点所需的最小迭代次数。

下面树的最小迭代次数是 6。考虑首先将根信息传递给任何孩子,除了 AB 答案将超过 7。所以 6 是最小答案。
亚马逊

对于这个问题,我给出了很多方法,但他对任何方法都不满意。我说我会尝试在二叉树中做它,然后我会将它推广到 n 叉树。他说你的二叉树方法是正确的,但你将它推广到 n-ary 的方式是错误的。面试官给了我很多提示,说你几乎解决了这个问题,但遗漏了一个我直到最后都找不到的地方。最后他转向另一个问题。

Q2- 给定一个二叉树,你必须检查它是否是 BST。
这个问题很简单。我在几分钟内解决了它(一种中序遍历方法 O(n)),但令我惊讶的是面试官说这是错误的。我向他解释,但他又说这是错误的。他的动机是给我施加压力,但我坚持我的解决方案,最后他转向了另一个问题。我的回答是正确的。

Q3 – 给定 BST 找到第 N 个最大值和第 N 个最小值元素。
我在 O(n) 中解决了它。他对此很好,但他说以对数时间做。我也做了一些预处理,并对这两种方法进行了编码。

总的来说,和他们面谈是一次非常好的经历。

一些技巧:

  • 自信点。不要让压力压倒你。
  • 亚马逊主要是找会写代码的,光说不练是不行的。所以开始尽可能多地练习。没有编程语言的障碍。
  • 当面试官提出问题时,请务必向他们提问,并尝试提出一些表明您对与他们合作非常感兴趣的问题
  • www.geeksforgeeks.org——我的指南。利用此门户上可用的大量资源为您谋取利益,但不要夸大代码。尝试先自己解决。

祝你好运 !!!

亚马逊的所有练习题!