亚马逊参观了我们的校园,招聘 2016 年夏季的软件开发实习生。所有 CS 和 IT 学生都有资格。
第 1 轮(编码 + 能力):
第一轮包括操作系统、DS、基本能力、算法、时间复杂度等问题,然后是 HackerRank 平台上的 2 个编码问题
1. 找出第 n 个魔数,其中魔数是 5 的幂或 5 的唯一幂之和。 5,25,30(25+5),125,130(125+5),…
2.鉴于字典查找如果输入的字符串对应于字符串的任何可能的划分存在于字典。例如。如果“i”和“like”出现在字典中,我们需要找出给定的输入字符串(比如“ilike”)是否可以被分割,使得它的组成部分是字典的成员。
本轮过后,18名学生入围。
第二轮(F2F)
问题 1 给定一个按排序顺序包含 1 和 0 的矩阵(所有 1 应该是连续的,后面跟着全 0),我们需要找到具有最大数量 1 的行。
Eg. Consider the matrix
1111000
1000000
1110000
1100000
您的程序应该返回 row=1(基于 1 的索引)
预期复杂度 = O(r+c),其中 r 是行数,c 是列数。
我从 O(r*c) 开始,然后优化为 O(rlogc),最后优化为 O(r+c)。
问题二
给定空间中的三个点,找出三角形是否存在。
问题三
给定空间中的四个点,找出正方形是否存在。
问题 4 给定空间中的点,你将如何确定给定的点是否按顺时针顺序排列。
对于最优化的方法,所有问题都需要完整的工作代码。
10名学生进一步入围下一轮。
第三轮(F2F)
我们最初讨论了我的项目,包括我想进一步指导我的项目的未来课程。
问题 1 给定一棵二叉树,判断它是否是一棵空间复杂度为常数的二叉搜索树。
问题二
假设在一个圆圈中有 n 个加油站。两站 P1 和 P2 之间的距离差为 L1 等等。汽油和要行驶的距离。 .找出是否有一个顶点开始,您可以从该顶点返回到穿过圆一次的同一点。
预期复杂度 O(n) 我从 O(n^2) 开始,逐渐优化到 O(n)
(提示:建立一个储备数组,使得 R[i] = P[i] – L[i])
在这种情况下也需要完整的工作代码。
本轮选拔6名学生实习。
提示:
- 保持冷静
- 始终保持超级自信。这就是关键。
- 对自己有信心
- 您的实施技能必须非常出色。
感谢 Geeksforgeeks 帮助我做好准备,并成为过去采访集的优秀资料库。