Amazon OA2 12.5 due

原帖地址:一亩三分地

OA2 是比较早之前做的了(12月4号),这么晚才发上来是因为紧接着就是各种赶期末的作业和考试……

先说一下我两次OA的时间:
11月初内推 -> 11月20号收到OA1(28 due) -> 11月25号做了OA1 -> 11月26号收到OA2 -> 12月4号做OA2 (12月5号due) -> 至今没有消息……

我OA1的面经帖,虽然可参考的不多

想起来我OA1做的debug题是selection sort和insertion sort,不是bubble sort, 我会在OA1帖上补充一下的。

现在来说OA2:
1. Work Simulation真的是做得头晕目眩,确实给了2个小时的时间(虽然邮件说90分钟)
然后各种看题看了我很久,因为都是好长一段文字的。我觉得正常的工作不会在chat的时候搞这么多文字?!
我参考的帖子有这些,真的很有帮助:
Work simulation的介绍帖
这里有一层楼提到了5个test case的答案
然后关于那个有看代码看test case的问题:
首先他问了两三个问题,关于某段的复杂度和某段代码改成怎么实现好。我对于复杂度怎么计算总是没有自信,所以也没记下来答案。至于某段代码怎么改,我觉得应该是把Shopping Cart的类挪到User类下面?记得不是特别清楚了。
然后他问了那几个test case会过还是报错。地里好多做过的人都说有4个是错的,然后我只看出3个错的,因为有两个都是assertSame的test case,看不出来哪个不对……估计我会挂在这里,可能他们会要求这里要全对……
我觉得其余就没什么了,就是以客户需求为重吧,我记得有一个帖子的楼主提到在后续Video面试中,面试官提到Amazon重视客户需求。
2. Coding的题我遇到的是
(1) Minimum sum of the path in a tree: 这题很简单,就是求一棵二叉树的哪个路径权值加起来最小。
(2) Maze : 这题折腾了我好久啊!之前没时间把所有题都做一遍(地里的面经已经几乎涵盖了题库了),然后就没做这题,觉得不会遇到……
这题呢,用故事性强一点的说法就是,一只可怜的饥饿的小老鼠在一个N乘以N的迷宫里面(其实就一个二维数组……),它从(0,0)点开始出发,要寻找奶酪来吃(似乎是它闻到有奶酪的味了?)。
然后呢,这个二维数组表示的迷宫里面,1是路,0是墙(如果没记错的话,大家还是认真看看这个),值为9的地方是终点!
题目给出的就是这个二维数组,问你小老鼠最后能不能吃到奶酪(到达9)呢?能的话就返回true,不(e)能(si)的话就返回false。
我留意到了之前做过这个题的楼主提醒,老鼠在(0,0)开始,然后要测(0,0)就是终点(==9)的情况, 多么坑的一个corner case。
然后我就很欢(ku)乐(bi)地开始写了。但是!楼主这题花了30多分钟才写完,原因如下:
倒霉1: 楼主之前各种训练shortest time job first, round robin, 然后各种需要递归迭代的题通通很弱……于是这题就花了很长的时间。
倒霉2: 楼主的网络连接不给力,10分钟之内断了3次,重复登录3次,幸运的是都登录回去了。每次登出都得等2分钟来登回去。(现在想想我应该利用这个登出的时间把题妥妥的做完在登入啊!!)
倒霉3: 楼主没想到起点为0(墙)的情况是直接返回不能(false)的!那时候我已经被网络不佳给搞得特别慌了,就剩12分钟了,心里想着这回惨了,简单题都过不了。然后楼主一个不小心点到“test case”那个tab。(注意不是你的test case运行的情况,而是OA给出来的两个示例test case) 然后那里就有一个起点为墙返回为false…… 然后楼主立即马上迅速地加上了这条才过了的。
但是毕竟这题花太长时间才过的,而且各种慌的表情是不是都被拍到了?所以希望也不大了。只是希望我的经(jiao)验(xun)能对大家有帮助……
我比较擅长讲故事,代码写得不行。如果Amazon缺讲故事的就考虑考虑我吧!哈哈:)
然后就是OA2 coding方面特别有帮助的帖子:
Amazon OA 第二轮 面经

Amazon OA2 Work simulation + Coding

【推荐】Amazon OA1 OA2 总结(含答案)

希望对大家有帮助