📜  亚马逊面试体验(2019 年校内实习)

📅  最后修改于: 2021-11-16 14:40:56             🧑  作者: Mango

亚马逊访问我们的校园进行实习和全职工作。我参加了实习活动,在这里分享我的经验。

第 1 轮(在线):

满足要求的 cgpa(可能是 7)标准的每个人都被允许参加这一轮。这是能力和编码问题的混合体。主要部分是:

  1. 逻辑推理——提出了基于基础数学、关系、基于段落的问题。
  2. 调试——我们被要求更正给定的代码/用首选语言(c++、 Java等)编写给定代码的输出。
  3. 编码——
    1. 基于图的问题(BFS):
      https://www.geeksforgeeks.org/shortest-distance-two-cells-matrix-grid/
    2. 基于矩阵的问题:
      https://www.geeksforgeeks.org/search-in-row-wise-and-column-wise-sorted-matrix/

我可以以最小的时间和空间复杂度解决这两个编码问题。

第二轮(笔纸轮):

我们收到了两个 DSA 问题,我们必须在 30 分钟内从头开始编写生产就绪代码。问题是:

  1. https://www.geeksforgeeks.org/lowest-common-ancestor-binary-tree-set-1/
  2. https://www.geeksforgeeks.org/print-a-given-matrix-in-spiral-form/

代码必须在语法上正确,而且所有的边缘情况都应该被覆盖。此外,如果您有足够的信心,请提及时间和空间的复杂性。像正确的变量名、边缘情况考虑、整洁的代码这样的小事情会产生巨大的影响。

第 3 轮(PI):

这是第一轮面对面的面试。面试官很友好,让我在开始面试之前就放心了。首先他快速浏览了我的简历。我没有任何个人项目/以前的实习/额外的技术技能。所以我被问到的主要是概念性问题。

他问我最喜欢的编程语言。 (我说的是 C++)。他问了我一些关于面向对象编程方面的问题,比如面向对象编程的主要特征是什么,访问说明符之间的区别,在哪里使用什么,oop、继承和多态的好处是什么,深入等等。

他问了我一些 dbms 的问题。我被要求写一两个主要基于连接的 sql 查询。

然后他转向了 DSA。有人问我散列 – 它是如何实现的,类型等。我还被要求设计一个我自己的哈希函数。我无法完美回答这个问题。然后我被问到两个 DSA 问题——

  1. LCA : https://www.geeksforgeeks.org/lowest-common-ancestor-binary-tree-set-1/

    起初我无法给出空间优化的解决方案。他给了我一些提示,最终我可以给出空间优化的解决方案。

  2. https://leetcode.com/problems/k-th-symbol-in-grammar/

    我可以为此提供递归解决方案,但它不是空间优化的,所以他给了我一些提示。我跟着他们,甚至朝着正确的方向前进,但无法想出正确的解决方案。然而,我在整个讨论中分享了我的思考过程。

这一轮耗时约1小时。我的一些朋友被要求进行第二轮 PI。

注意:最好能熟练使用Java,因为大多数面试官都喜欢这样。此外,提供正确的代码并不总是很重要。我们处理问题的方式,我们的思考过程也很重要。所以想大声点

判决:选择

我从 geeksforgeeks 练习了大约 5-6 个月。最初我练习主题明智,后来当我有足够的信心时,我开始练习公司明智(主要针对那些访问我们校园的公司)。我也养成了每天阅读 gfg 至少一次面试经历的习惯。