📜  亚马逊专访 |设置 20

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

亚马逊专访 |设置 20

最近接受了亚马逊海得拉巴 SDE1 的采访。

书面
1)给定一个BST,以及一个节点的左右指针,它有前向和后向指针,使用这些额外的指针将树转换为双向链表。

2) A = {5, 3, 8, 9, 16}
经过一次迭代 A = {3-5,8-3,9-8,16-9}={-2,5,1,7}
第二次迭代后 A = {5-(-2),1-5,7-1} sum =7+(-4)+6=9
给定一个数组,在 n 次迭代后返回总和

3) 编写一个函数,将字符串AAACCCBBD 压缩为 A3C3B2D
和其他从压缩中生成的函数。


第一个 f2f)
1)检查给定的BT是BST

2) 以数组的形式给出每天一只股票的成本,找出当日你可以通过买卖获得的最大利润

3) 在矩阵 A[m][n] 中,每一行和每一列都被排序,编写一个函数来检查这个矩阵中是否存在一个数字。

4)给定一个字符串,找到最长的只包含唯一字符的子序列。


第二个-f2f)
1)将一个BT转换为SUM BT(每个节点值=左右节点之和)

2)“我每天收到数千封电子邮件”,查找每封电子邮件中的所有字谜并打印每封电子邮件中所有字谜的计数。
我的解决方案是使用 trie 和哈希函数来增加 trie 中每个节点的计数器。
哈希函数将以排序方式返回给定的单词,他让我编写代码,这很乏味但给出了一个粗略的草稿。
初始设置成本会很高,但是通过将所有计数器设为零,可以将相同的 trie 用于任何电子邮件。


第三f2f)
1)他就我的项目谈了将近 45 分钟,并询问我们如何实施它。我还在我现在的公司从事网络服务的工作,所以他们更感兴趣在那里提出问题,并想知道我在那里的实施情况。

2)国际象棋int board[8][8]的设计题矩阵中的每个值代表一个字符。 1-9 代表所有白人,11-19 代表所有黑人。
给定 (x,y) 处的棋子,打印所有可能的移动。假设白人是索引 0,黑人是索引 7。


第四f2f)
1)二维空间(一个平面)存在三叉树。打印从平面右侧可见的所有元素(如果您沿 y 轴平面看到)
例如)在以下答案中将是(1)(5)(8)
—————————(1)———————————————
——————-(2)–(3)–(4)–(5)———————————
———-(6)–(7)–(8)———————————————–

2) 以之字形顺序打印这些元素,首先是 level1,然后是 level n,level 2 和 level n-1,依此类推。

用更简单的话来说,在三叉树的每一层打印最右边的结束元素。
我的方法是采用两个队列,在 Q1 中将根入队,在 Q2 中将其子节点出队,同时将元素从一个队列移动到另一个队列,将最后一个元素存储在双向链表中。
打印时,使用这个双链表,从头到尾删除,直到变为空。


第五f2f)
1) 在帕斯卡三角形的第 i 行中找到第 j 个元素

1
1 1
1 2 1
1 3 3 1
1 4 6 4 1... 和儿子。 pascal(4,2) 应该返回 6。

pascal(int i , int j){
  if(i<0||j<0) return 0;
  if(i==0 &&j==0) return 1;
  if(i==0 && j!=0) return 0;
  return pascal(i-1,j-1)+pascal(i-1,j);
}

复杂性很差,一旦计算出子问题,我就不会对解决方案进行分组

2)实现自己的哈希函数,键为字符串,值的类型为 Object
最初我告诉 BST 插入删除订单日志(n),然后他告诉我思考和回答然后我告诉自我平衡 BST,他让我实施,

3) 以运算符优先级计算数学表达式 2*3+(5-6/2),类似这样。

每次 f2f 面试时间为 50-60 分钟。在每个 f2f 回合中,他们都会询问更改的原因以及您当前的项目。你应该完美地回答你当前的项目,不要喋喋不休,他们也会在当前项目中提出很好的问题。
这些问题可能会占用 15-20 分钟以上的时间,在其余时间,您必须在 DS 中至少回答 2 个问题并对其进行编码。
如果你回答,你会得到一个更多的问题,这是一个优势🙂
首先他会解释这个问题并给你一些时间。
你需要先说明解决方案,如果他喜欢,然后他会要求你编写生产代码并拿走论文。

每次面试都不像亚马逊的一个级别,他们不会与你或其他面试官分享反馈。

面试过程完成后,所有参加面试的人都会坐下来评判(这是HR告诉我的😀)

所有的面试官都很友好,最后我接到了HR的电话说我被选中了😀

感谢 Geek4Geeks 😀

亚马逊的所有练习题!