亚马逊面试经历 |第 132 组(适用于 SDE 实习生)
在线回合:(时长 - 90 分钟)
解决 20 个 MCQ 和 2 个编码问题。 20个MCQ是关于算法、数据结构、C输出、定量能力等。
编码问题每题 10 分。
MCQ 有负面标记。
正确:+1
错误:-0.25
Q1 – 给定一个数字数组,以交替的方式排列它们,使每个数字后跟一个数字相反的符号。秩序也要维持。如果负数的数量更多,则将额外的最后保留在数组中,对于正数来说相同。
Example :
Input: -3 -2 6 0 7 -1 -8
Output: -3 6 -2 0 -1 7 -8
Q2 – 手机中排列的字符,即
1- 空
2-a,b,c
3-d,e,f
4-g,h,i
.
.
.
9-w,x,y,z
0-NULL
按字典顺序打印给定位数 (k) 的所有组合。
约束:1<=k<4
例如:输入 = 234
输出: adg adh adi aeg aeh aei afg afh afi bdg bdh bdi beg bei bfg bfh bfi cdg cdh cdi ceg che dei cfg cfh cfi
第 1 轮 F2F:(时长 - 1 小时)
自我介绍。
Q1 – 设计一个随机播放函数,在您的设备中随机播放歌曲(唯一的 song_id)并对其进行编码。
在我给他一个哈希函数的解决方案后,他让我改进算法,一旦播放了一首歌曲,它应该只在播放所有其他歌曲时播放,
解决方案的复杂性:空间 - O(n) ,时间 - O(1) ; n—>歌曲数
之后,他要求我改进我的解决方案并在不使用额外空间的情况下做到这一点。
解决方案的复杂性:空间 - O(1) ,时间 - O(n) ; n—>歌曲数
提示:维护索引,一旦播放歌曲,将其转移到播放歌曲索引的范围内。
之后我被问及哈希函数的每个部分以及我是如何想到的。
Q2 –添加两个链表。并编码。
Input : 1->2->3->4->NULL
8->2->NULL
Output : 1->3->1->6->NULL
首先他要求不使用递归,然后使用递归。我们还讨论了如果我们将链表的值存储在整数或长整数中,如果位数超过非递归函数中的某些限制,我们将面临的问题.
第 2 轮 F2F:(时长 - 1 小时)
自我介绍。
Q1 –在给定的二叉树中找到最大的二叉搜索树。然后对其进行优化,然后让我对其进行编码。
Q2 – 给定一个带有下一个指针的链表和一个指向链表中任意节点的任意指针,复制链表。
在我给他一个更改初始链接列表链接的解决方案后,他要求我不要更改链接。
所以我给了他一个 O(n^2) 的解决方案。他让我提供另一种方式或优化我的解决方案。他帮助我找出解决方案。
提示 - 哈希图。
面试官真的很帮助和支持,更感兴趣的是看到你所做的努力和你达到逻辑的方式。他们通过给出提示来帮助整个过程。
感谢 geeksforgeeks 帮助我。
祝你好运。