📜  亚马逊面试经历 |设置 276(校园 SDE-I)

📅  最后修改于: 2022-05-13 01:58:18.484000             🧑  作者: Mango

亚马逊面试经历 |设置 276(校园 SDE-I)

  • 第一轮(在线测试:MCQ+编码)
    • 来自 OS、C、Shell、DBMS(SQL、NoSQL)的 18 个基本 MCQ,拼图(25 匹马,找到最快的三个):12/13 尝试
    • 2 编码问题:
      1. 给定一个字符串和一个模式,说明它是否遵循模式。例如:s =“redblueredgreen”匹配模式“abac”但不匹配“aaab”,因为“red”表示“a”,“blue”表示“b”,“green”表示“c”。字符串 s 仅包含单词“red”、“green”和“blue”,并且 pattern 可以包含任何字符。[完成]
      2. 给定一个数字 n 和 k(不允许交换次数),通过最多 k 次交换来从 n 中取最大的数字。如果它已经是最大的返回数字本身。
  • 第 2 轮(F2F) 1. 给定两个包含数字的数组,找到所有可能的排序 (a, b),使得 a*b=P(给定乘积),其中 a 属于数组 1,b 属于数组 b。
    方法:将较短数组中的所有元素存储在哈希中并遍历另一个并查找(P / b)是否存在于哈希中。如果存在打印订购。
  1. 给定一条圆形道路,道路上有不同距离的加油站。给出了从一个站点移动到另一个站点的成本。由于油箱容量是无限的,您可以在每个加油站加油。查找是否可以穿越完整的道路,如果可以,则找到完成路线的起始位置。

    方法:从头开始,开始穿越道路。如果燃料在任何时候用完,则向后移动起始索引并将其气体添加到油箱中。如果它仍然 -ve 然后继续这样做,直到你有足够的前进。

  • 第三轮(F2F)
    1. 给定一个 N*M 矩阵,打印所有可能大小的所有正方形/矩形(全部为 1*1,然后全部为 1*2……2*1……)

      方法:蛮力

    2. 序列化二叉树

      方法:

      1. 存储任意两个遍历。但这需要很大的空间。
      2. 存储所有节点并将每个节点的信息存储在布尔数组中是否具有左右子树。
  • Round 4(F2F) 1. 从亚马逊仓库中寻找最佳选择包裹的函数。包装包含不同单位的产品,例如:一个可以有 5 个 iphone,另一个可以有 3 个,依此类推。每个包都无限存在,即。拿一个然后还有无限剩余。你可以拆成一个包,你必须把它作为一个整体。此外,应首先使用较小尺寸的包装。很多修改。

    方法:建议的子集和 dp 解决方案。无法正确处理无限情况。 2. 使用链表表示的给定数字加一,其中 MSB 位于尾部,LSB 位于头部。

亚马逊的所有练习题!