我于11月底通过转介申请了为期6个月的实习。我认为如果你通过转介提出申请, 则只需1-2天即可从HR处取得回复, 然而2-3天后, 当没有人分割我时, 我认为我不会再收到他们的回音。然而两周后, 我收到了无关在线编码回合的邮件。

第一轮:在线编码

有2个编码问题和28个MCQ。

  1. 中断到后缀的转换
  2. 非常简单的字符串操作问题

我可能解决两个问题。

两天后, 他们通知了我无关现场面试的信息, 我不得不去亚马逊班加罗尔办公室。

面试那天, 我去了办公室。还有大概70-80个学生。

第二轮:技术面试

这是60分钟的工夫, 并询问了2个编码问题。我齐全解决了一部分问题。我的面试官很酷而且很友善。只管他没有笑很多, 但他让我感到咱们在探讨这个问题。他从常见的对于你问题开始, 而后间接跳到编码问题。

Q1。你在高空楼梯上, 必须要达到"第N个"楼梯。在任何楼梯上, 你最多只能执行" K"步。查找能够达到第N个楼梯的总数。

int countWays(int N, int K)

他向我解释了这个问题, 而后通过一个样本测试用例对其进行了解释。而后请我先解释一下这种办法, 如果他对这种办法感到称心, 那么只有我能力编写代码。他通知我, 他还将在笔记本电脑上记下来。

首先, 我给了他递归暴力解决方案(因为这就是CTCI所说的)。而后他让我优化它。而后, 我给了他工夫复杂度为O(N * K)和空间复杂度为O(N)的DP办法。而后他要求我进一步优化它。我应用了另一个变量来存储最初K个楼梯的总和, 并为第i个楼梯减少其值, 为第(i-k)个楼梯缩小其值。当初我的工夫复杂度为O(N), 空间复杂度为O(N)。我认为当初能够编码了, 然而他再次要求我优化空间。而后我给了他O(K)空间队列解决方案。当初他对这种办法感到称心, 并要求我对其进行编码。他再次向我解释了编写代码时的冀望。 (可读, 模块化, 缩进, 有意义的变量名)。而后我编写了代码, 他查看了一下并感到称心。

Q2。带有替换的最小字符串– https://leetcode.com/problems...

我很难提出强力解决方案, 我通知他。而后他给了我一些提醒, 在他的帮忙下, 我想出了一个强力解决方案。之后, 咱们进行了一些探讨, 即蛮力解决方案是否将始终提供正确的解决方案。在那之后, 他让我优化它, 我正在尝试, 然而他通知我工夫到了, 如果我有任何问题。我只是问过他实习生的角色以及哪个团队正在招聘实习生。

15分钟后, 他们通知我我要进行下一轮较量。

第二轮:技术面试

同样是60分钟, 询问了3个编码问题。首先, 他请我做一个简短的介绍。而后他问我无关我的实习和我的项目的状况。而后他通知了我他对本轮较量的冀望。他通知我, 他会依据工夫询问2-3个问题, 我须要先向他解释逻辑, 而后再进行编码。另外, 请遵循良好的编码习惯。他通知我说, 我将不能笼罩编写代码, 并且他将在计算机上编写确切的代码(不确定他是否的确做到了, 然而他正在笔记本电脑上打字)。

Q1。困雨水问题

首先, 给他蛮力解O(N ^ 2)。他通知我对其进行优化。而后给了他leftMax和rightMax数组办法。他说我当初能够编码。在编写代码时, 我确保放弃整洁, 应用描述性变量名尽可能使其模块化。他查看了我的代码, 问了我几个问题, 而后转到第二个问题。

Q2。

既然我曾经答复了这个问题, 我通知他我只须要在数组中找到LIS。他通知我我该怎么做。我给他O(N ^ 2)办法。他说能够, 请我编码。

Q3。这是一个简略的问题。他问我那里有一块土地, 外面有一个湖。我须要找到湖的大小。我通知他我能够用1示意土地, 用0示意水, 而后在遇到任何0时应用DFS。而后他问无关DFS的问题以及我将如何做。我向他解释了我的办法, 而后他要求我为此编写伪代码。

而后他问我是否有任何问题。我问他一些问题。

而后大概20分钟后, HR打电话给他并向我表示祝贺。

面试倡议

  1. 无论剩下多少工夫, 请确保你的代码遵循良好的做法。我记得有段时间我认为我会很快写代码, 而后向他解释代码, 然而那样行不通。他们会将论文保留在你编写代码的地位, 而后在对你有任何疑难的状况下对其进行复查。因而, 请确保你写的内容是能够了解的。你的代码, 逻辑, 图表, 测试用例。
  2. 确保你正在探讨而不是面试。确保以一种探讨的形式来解释你的办法和对他/她的问题的答案。怎么样?解释诸如你晓得的事件, 而不仅仅是猜想, 解释为什么你在思考递归解决方案。
  3. 始终在互联网上查找问题的答案。下一位面试官可能会问你。

更多面试相干内容请参考:lsbin - IT开发技术:https://www.lsbin.com/

参考更多面试题相干内容:

  • 摩根大通面试题:https://www.lsbin.com/3218.html
  • 操作系统试题:https://www.lsbin.com/3196.html
  • 面试常见的10个谬误:https://www.lsbin.com/2782.html