📌  相关文章
📜  亚马逊 SDE 实习面试经验 |惊奇世界 2020

📅  最后修改于: 2021-11-15 08:18:55             🧑  作者: Mango

第 1 轮(在线测试):在线测试在 Mettl 平台上进行。持续时间为1小时30分钟。它由网络摄像头监看,由 28 个 MCQ 和 2 个编码问题组成。 MCQ 基于数据结构、预测输出、C++ 和算法。

第二轮:面试以“告诉我你自己”开始。之后,他问了编码问题。

  1. 找出包含不同字符的最长子串。

    前任:

    Input: abbabcdd
    Output: 4

    参考: https : //www.geeksforgeeks.org/length-of-the-longest-substring-without-repeating-characters/

  2. 给定包含节点是否为叶节点的 preorder 和 pre_LN,构造一个二叉树。

    前任:

    pre =  {1,2,45,3,5}  pre_LN={N, N, L, L, L}
    Tree:
           1
         /   \
        2     5
      /   \
    45      3
    The interviewer was very keen on edge case handling.  
    For example, Function  should return null  if:
    pre={1,2,3}   pre_LN={L, N, N}

    参考: https : //www.geeksforgeeks.org/construct-a-special-tree-from-given-preorder-traversal/

持续时间为1小时

第三轮:面试以“告诉我你自己”开始。

  1. 一个袋子里装着魔法球。每个球都有特定的重量。每次,具有两个最高权重的球都会被移除(让球为 X 和 Y)和碰撞,这可能会或可能不会导致遵循给定约束的新球:

    • 情况 1:如果 X>Y 那么它们会产生一个新的重量为 XY 的球
    • 情况 2:如果 Y>X,它们会产生一个新的重量为 YX 的球
    • 情况 3:X=Y 没有新球
    • 示例:[2,4,6,8]
    • Pick 6,8 -> New ball=2 -> Array 变成 [2,4,2]
    • Pick 4,2 -> New ball=2-> Array 变成 [2,2]
    • 选择 2,2 -> 数组为空 -> 返回 0
    • 示例 2:[3,10,17]
    • Pick 10,17 -> New ball=7 -> Array 变成 [3,7]
    • Pick 3,7 -> New ball=4-> Array 变成 [4]

    由于数组只包含 1 个球,返回它的权重 -> 返回 4

  2. 有 n 个工人,每个工人都有一定的能力。工人根据他们的能力获得 rotis,即具有更高评级的工人将获得更多数量的 rotis。一个工人只能知道他的两个邻居的 rotis 和容量,一个在左边,另一个在右边。给定一个指定工人能力的数组,找到应该给每个工人的最小 rotis,以便没有工人感到不公平。

    例子:

    Input: 1 3 5 4 (ratings for 4 workers)
    Output: 1+2+3+2 = 7

    例子:

    Input: 5 3 4 2 1 6
    Output: 2+1+3+2+1+2 = 11.
  3. 由于还有时间,他询问了 DBMS 和互斥锁、信号量、死锁(操作系统概念)中的 ACID 属性。

持续时间为1小时。

结果:选中

GeeksforGeeks 对我的准备工作很有帮助。非常感谢!!