📜  亚马逊专访 |设置 98(校内)

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

亚马逊专访 |设置 98(校内)

我是本科四年级的 CSE。我在校园里接受了亚马逊的面试。

第一回合:
第一轮是简单的一轮。它有 20 个关于 C/C++ 的 MCQ 问题和 2 个编码问题。编码问题是:
1.) 给你一个字符串,表示数字和操作数的表达式。例如。 1+2*3,1-2+4。您需要评估字符串或表达式。没有 BODMAS 遵循。如果表达式的语法不正确,则返回 -1。
测试用例 :
a) 1+2*3 将被评估为 9。
b) 4-2+6*3 将被评估为 24。
c) 1++2 将被评估为 -1(INVALID)。
此外,在字符串中可能会出现空格。对于这种情况,我们需要忽略空格。像:- 1*2 -1 等于 1。

2.) 你得到一个正整数和负整数的数组。您需要重新排列数组,使正数和负数交替出现。此外,顺序应该与之前的数组相同,并且只能使用 O(1) 辅助空间和时间复杂度边界 O(n)。
例如。 -2 3 4 5 -1 -6 7 9 1
结果 - 3 -2 4 -1 5 -6 7 9 1。

第二轮:
在这一轮中,我们被分成了 5 人一组。给出了两个问题,我们需要为那个问题在纸上写代码。
我的代码是:
1.)您需要确定链表是否为回文。
2.)以螺旋形式打印二叉树的级别顺序遍历。[他们还问我们没有任何额外空间和O(n)的解决方案
时间复杂度]。

第三轮(F2F):
面试让我为这两个问题编写代码:
1.) 反转链表的备用 K 节点。
例如。 1->2->3->4->5->6->7->8->NULL
结果 – 3->2->1->6->5->4->8->7->NULL。

2.) 你得到二叉树,两个节点说 k1 和 k2 。您需要确定这两个节点是否是彼此的表亲。
例如。 6
/ \
3 5
/ \ / \
7 8 1 3
并说两个节点是 7 和 1。结果将是 TRUE。
假设两个节点是 3 和 5。结果将为 FALSE。
假设两个节点是 7 和 5。结果将为 FALSE。

3.) 给出以下问题的算法、数据结构、时间复杂度和空间复杂度:
在我们的手机中,当我们输入数字的四个首字母说 9 4 5 6 时,我们的手机会显示以这些输入的数字开头的整个数字列表。
现在的问题是:它是如何实现的,以及在空间和时间复杂度之间保持平衡的最佳方法是什么。此外,用户可以输入任意数量的姓名首字母,并且您的程序应该打印所有带有您电话簿中的姓名首字母的数字。

第四轮(F2F):
面试官问了一些关于C++的问题。他们是 :
1.什么是虚函数?
2.虚函数有什么用?
3. 什么是纯虚函数?
4. 虚函数和纯虚函数的语法?
5. C++中的抽象类是什么?
6.我们如何在Java中实现纯虚函数?

设计问题:
我们如何限制我们的类,以便只能创建它的单个实例?
什么是单例设计模式?

操作系统问题:
1.什么是信号量?
2. 什么是生产者消费者问题并给出不同的解决方案?

他要求我编写两个问题:
1.将一个字符串转换为另一个字符串。为此,您可以使用三种操作 - SUBSTITUTE、DELETE、INSERT。每个操作的成本为一个,除了
具有成本的替代品 2.您必须确定所需的最低成本。
例如。
第一个字符串:INCLINE
第二个字符串:DECLINE
所需的最低成本为:4 [将 I 更改为 D,N 更改为 E]。

2. 实现push()、pop() 和getMiddle() 在任何时间点都有O(1) 复杂度的栈。

3. 找出二叉树中存在的最大尺寸 BST。

他还询问了我的项目以及我为什么选择它们的问题。他要求解释我在其中表演的整套东西。
(约10分钟讨论)

第五轮(F2F):
这一轮从对我的项目的深入讨论开始。面试官试图了解我项目的每一个方面,其中有很多原因
以及如何提问。她问我项目的未来范围以及我从中学到了什么。(大约 30 分钟的讨论)。

然后她问我以下问题的实现、算法、数据结构、时间复杂度和空间复杂度:
假设我们的网站有几个网页。还有很多用户正在访问该网站。
假设用户 1 具有访问模式:x->y->z->a->b->c->d->e->f
用户 2 具有访问模式:z->a->b->c->d
用户 3 具有访问模式:y->z->a->b->c->d
用户 4 具有访问模式:a->b->c->d
对于许多有限且编号的用户,列表还在继续。
现在的问题是我们必须确定前 3 个最常出现的 k-Page-sequence。
对于上面的示例结果将是:(k=3) a->b->c,b->c->d,z->a->b。
[问题讨论了很长时间,她不断地在上面的问题中添加约束、案例和更多问题。]

她让我编写的一个问题是:
你被刺痛了。查找该字符中不重复且在序列中最后出现的字符串。
例如- aababaacdffgxc
结果 - x

我要感谢 GeeksForGeeks,它帮助我提高了对数据结构和算法的知识和理解🙂

亚马逊的所有练习题!