亚马逊来我们学院做全职员工和两个月的暑期实习生。 第一轮 是与MCQ一起进行的一轮在线编码。记住正确尝试一些MCQ,以提高通过这轮编码的机会,因为编码问题可能不是很难。
问题1。 使用给定数字的数字查找下一个最大数字。 允许使用STL! 问题2。 在给定的数组中,求|Ai–i |–Aj–j的最大值,其中i不等于j。 这很简单!
MCQ是标准的,主要来自排列、组合和概率。还有代码片段的输出。
这里的选择比例是5:1。
第二轮:面对面2面对面面试1
询问最喜欢的数据结构和相关问题。我回答了树和链表。 所以,这些问题来自树木的基础知识。 问题1。 检查给定的二叉树是否是二叉搜索树。 然后,顺序后继部分产生了问题,顺序后继部分必须使用和不使用父指针进行编码。 问题2。 使用数组、链表和队列实现堆栈。 并评论它们的优缺点。 问题3。 使用堆栈实现队列 并评论其复杂性。
问题很简单,但代码是必需的。
31人中有20人被选中。
第三轮:F2F访谈2
同一环境下的不同面试官。 发现与前一轮相比,这些问题的标准更高,而且更耗时。
问题1。 保持输入和输出字符或数字流中的第一个非重复字符 简单地在O(1)中。 给出了O(n)在特定时刻的一些解。 但是使用了散列和队列,但这不允许维护第一个非重复字符,因为不能随机访问元素。 有很多提示,最后我明白了面试官是在暗示一个deque,其中散列值是deque中的节点指针。 我只需要总结一些小事情,然后把所有的细节都安排好,给出一个最终的解决方案。 不太令人满意。
问题2。 克隆带有随机指针的二叉树: 我做了普通二叉树的克隆,但无法对随机指针进行克隆,因为我需要链接和路径。 给出了一个O(nlogn)解决方案,存储从节点到随机指针节点的所有路径。 最后,我想出了一个看起来不错的哈希映射解决方案。 面试官让我练习更多的问题,增加数据结构方面的知识深度。
这就是面试的全部内容! 虽然这些问题对我来说并不常见,但这些都是标准问题,可以在gfg中找到。 但不知何故,我一直在思考,收集答案的提示,并对其进行总结。
我感谢为学习和实践提供的大量在线资源,尤其是Geeeksforgeks。组织。
如果你喜欢Geeksforgek,并想贡献自己的力量,你也可以写一篇文章,然后把你的文章发到contribute@geeksforgeeks.org.看到你的文章出现在Geeksforgeks主页上,并帮助其他极客。