📜  亚马逊面试经历 |设置 286(校内)

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

亚马逊面试经历 |设置 286(校内)

第 1 轮(HackerRank 在线)
时长:90 分钟
20 道 MCQ 问题,主要基于操作系统、数据结构和算法以及一些谜题。

2个编码问题

1. 给定一个长度为“n”的字符串(可能是也可能不是回文)。还给出了 'k' (0 <= k <= n),这样 'k' 表示可以替换以将其转换为回文的字符串的最大字符数。你的任务是将字符串转换为最大回文数,可以通过用数字 0-9 替换字符串来形成。如果无法将字符串转换为回文,则打印“-1”。

注意:字符串中的前导 0 也被认为是回文字符串的一部分。例如,00100 也是一个带有前导零的回文。

测试用例:
一世。 n = 4, k = 2。给定输入字符串“1111”,那么输出字符串将是“9119”
ii. n = 4 k = 1。给定输入字符串“1231”,那么输出字符串将是“1331”

2. 给定一个文本和模式字符串。该模式由以下字符组成 '+':可以替换为前一个字符的 0 次或多次出现 '*':匹配任何字符序列(包括空序列)'?':可以替换为单个出现任意字符的任务是用上述规则成功替换模式中的特殊字符后,判断字符串和模式是否匹配。如果文本和模式匹配则打印“true”,否则打印“false”

测试用例:第一个字符串是模式,第二个字符串代表文本

i.  Input : Am?zon Amazon 
    Output : true

ii. Input : Am?z*on Amazon 
    Output : true

如果概念清晰,多选题很容易解决。代码由团队手动验证,然后根据代码质量和总分对学生进行入围。

第 2 轮 (F2F) 时长:60 分钟
面试官很着急,他问了我一些基本的问题,比如“告诉我你自己?”然后我们讨论了我的实习,持续了 10 分钟,然后他提出了一个问题。

1. 设计音乐播放器的随机播放按钮,使其保持随机属性,并确保它在一个循环中唯一地播放所有歌曲(即,除非播放特定循环中的所有其他歌曲,否则任何歌曲都不应重复自身)
我最初给了他一个 O(nlogn) 方法。他想让我优化它,经过一些笔和纸的工作,我想出了一个 O(n) 的方法,面试官似乎很满意。

第 3 轮(F2F)时长:70-80 分钟
面试官很友好,给了我一些零食和水,让我很舒服。后来他让我尽力而为,如果我已经听说过他要问的问题,就不要愚弄他。他让我讲几行关于我自己的事,然后用 5 分钟讨论了我的实习,然后提出了几个问题。

1.交通汽车问题。给定 n 个人和 n+1 个停车位。每个人都有一辆车和一个停车位。一天晚上,他们都去参加一个聚会,喝醉了。他们最终随机停车。回到初始配置的最佳方法是什么(每辆车都在正确的分配槽中)。 n+1个停车位可用于交换汽车。
我告诉面试官,这个问题是向我的一位朋友提出的,我和他讨论过。他似乎对我的诚实印象深刻。然后他继续问下一个问题。

2. 股票买卖以最大化利润问题的变体
3. 捕获雨水问题

提示:让面试官参与讨论。给他方法,如果你没有朝着正确的方向思考,他们总是在那里指导你。不要一遇到问题就跳到代码中。
在向他解释背后的逻辑后,我对最后两个问题进行了编码,面试官似乎很满意。

第 4 轮(F2F)时长:约 90 分钟
最初只有一个人在面试我,但后来他又加入了另一个人,看起来我需要他们的同意才能进入下一轮。
1. 我们从讨论我以前的实习开始。他非常想知道我作为实习生的主要成果是什么,并且似乎也从我在这些公司的经验中学到了东西。

2. 计算到达第 n 级楼梯的方式
我首先向他解释了如何得出结果,然后在他对逻辑感到满意后,给了他递归的方法,然后是记忆的方法,然后是迭代的动态编程方法。

3. 树同构问题
给出了逻辑,然后我对其进行了编码。他似乎仍然不满意,并要求我引导他完成示例树的代码并绘制递归树。

4. 动态规划(最长算术级数)

5. 他让我高效地设计一个学生数据库。

原始的想法是他想要我感觉到的。

6. 很少有 DBMS 相关的简单回答的查询问题。

第 5 轮 (F2F) 时长 : 100-120 分钟
面试官一开始很友好。随着采访的进行,他变得不那么严格了,最终他又回到了他开始时的友好情绪😛

1. 我们从详细讨论我的实习开始。这持续了大约 30 分钟,直到他对我付出了很多努力使它成为一个成功的项目这一事实感到满意。

2. 第二轮被问到的股票买卖问题。我告诉他,这是在前几轮比赛中向我提出的,他似乎对我的诚实印象深刻。我想我在那里得到了一些忠诚度标记。

3. 使用next指针连接二叉树的同一垂直层级的节点。树的节点最多可以有两个父节点。
给出了方法,起初他似乎对我的代码并不完全满意,但经过一些优化后,他说现在似乎很好。

4.关于分页,冲突解决技术,页面替换算法的几个问题。

面试官可能想确保新员工对 DSA 以外的其他科目非常熟悉。他似乎对这些答案很满意。

5. 为什么选择亚马逊?

在最后一轮结束时向每个人提出的标准问题。

感谢 GeeksforGeeks。

小贴士:尽量保持冷静并接受采访。面试官经验丰富,他们不仅测试你的技术技能,还阅读你的表达方式(关于你对他们所问问题的反应如何)。有时运气可能不会站在你这边,所以即使你被拒绝了也不要失望。继续练习,确实你很快就会破解一些好的公司🙂

亚马逊的所有练习题!