亚马逊专访 |设置 86
这是我最近在亚马逊的面试经历。我的流程从他们的招聘活动开始。这是一个令人厌烦的过程,包括一轮书面面试和六轮面试,历时约 37 天。
以下是我的经历:
第一轮(书面轮):
1. 给定两个链表,每个链表代表一个数字,编写一个函数,返回一个代表总和的链表。
2. 给定一个排序好的数字数组。以 Array 中的数字为键,构建平衡二叉树。
3. 给定一个旋转了几个位置的排序数字数组,编写一个函数来搜索数组中的一个元素。
第 2 轮(F2F):
1.给定一棵二叉树,其中节点结构有一个名为“next”的附加字段,该字段是指向树节点类型的指针,填充每个节点的该字段以指向同一级别的下一个节点(如果最后一个节点则为NULL) .
2. 对几乎已排序的数组进行排序。一个几乎已排序的数组是一个数组,其中一个数字距其在已排序数组中的位置最多 k 个位置。
3. 给你一个 2D 网格,其中每个单元格要么是空的,要么包含代表 Door 的条目“D”,或者代表 Wall(障碍物)的条目“W”。您可以从网格中的每个空白位置向四个方向中的任何一个移动。当然,您不能进入其中包含“W”的单元格。您需要用一个数字填充每个空单元格,该数字代表离该单元格最近的门的距离。 (他们只问我 Algo,因为时间不多)。
第三轮(F2F):
1. 给定一个二维(矩形)网格点。您需要找到从给定源点到目标点的最短路径。您只能向上或向右移动。现在在这些点中,有一些特殊的点可以直接跳转到对角线的对角点(右上对角线)。您被授予一个函数,当在该点上调用该函数时,如果它是一个特殊点,则返回 1,如果不是,则返回 0。
2. 给你一系列黑色和白色的马,以及一组编号为 1 到 k 的 k 个马厩。您必须以满足以下条件的方式将马匹安置在马厩中:
一种。您将马匹装进马厩,保持马匹的秩序。例如,您不能将马 1 放入马厩 2 并将马 2 放入马厩 1。您必须保留马匹的顺序。
湾。没有马厩应该是空的,没有马应该是无人居住的。
C。取每个马厩的乘积(白马数 * 黑马数),然后取所有这些乘积的总和。这个值应该是所有可能的住宿安排中的最小值。
第 4 轮(F2F 与招聘经理):
1. 讨论我目前的工作、工作中面临的困难和挑战、我不得不与之共事的困难的人、我特意为工作中的现有问题提出创造性解决方案的实例等。
2.给定一个括号字符串,确定它是否是一个有效/合法的括号字符串。对于由单个括号类型组成的字符串和由多种类型组成的字符串。
第 5 轮(F2F – 提高标准):
1. 谈谈我目前的工作,工作中面临的困难和挑战等:-
2. 给定一个尺寸为 2 x W 的地板和尺寸为 2 x 1 的瓷砖,编写代码找出可以铺设地板的方式数。
3. 给定一个图,如果我们要打印给定节点的 k 跳内的所有节点,我们将使用哪种算法,答案显然是广度优先搜索。他接着问,如果要使用深度优先搜索来代替对这个问题进行编码,那么对于具有某些属性的图(可能是密集图或类似的),将会遇到臃肿的运行时间。描述 DFS 算法会因哪些类型的图而步履蹒跚以及原因。
第6轮(电话面试):
1. 假设您想维护一个书店应用程序的后端,该应用程序将存储作者和书籍的名称,以便该应用程序可以返回由特定作者撰写的所有书籍以及在 a 中指定的特定书籍的所有作者询问。查询可以只指定作者名或书名的子字符串,并且应返回所有匹配项。我提出了一个基于 trie 的解决方案,并被要求在 collabedit 共享文档上编写解决方案。
2. 描述多线程。
3. 描述在您输入 URL 和出现在屏幕上的网页之间发生的所有过程。
4. 什么是单例集 什么是用于在关系数据库中存储记录的数据存储模型(数据结构)。
5. 给定一个包含 1 到 n 之间数字的数组,其中缺少 1 个数字,找到缺少的数字。
6. 给定一个排序数组和一个数字,打印排序数组中所有与给定数字之和的数字对。
我在电话面试的当天晚上就接到了确认电话。 GeeksForGeeks 是针对顶级公司的面试有志者的天赐之物。跟上出色的工作人员,您的网站已经塑造了职业和生活。 Ĵ