Mark Avatar
Mark
岗位:SDE 入职公司:Amazon

在几个月前,我还每天泡在Drill insight里和同学们讨论project讨论的热火朝天的,每天都在和代码还有算法作斗争...每天两点一线,干着一样的事情...

那时候,对于我来说,别说是大厂Offer,哪怕是有个小公司的Offer都会让我兴奋不已..然而,就在那时候,我确收到了亚麻的Offer,这对于当时的我来说,无疑是天大的惊喜!

最让我印象深刻的是面试那天..那天的我真的是超级的紧张,我是一个不出手汗的人,但是那天,我不知道因为手汗擦了多少次手...

面试一开始,HR就直接抛出了一个和数据结构相关的问题,“假设你有一个包含大量数据的array,你需要做的是,快速找到其中的最大值和最小值,你会怎么做?”

听到问题的瞬间,我就懵了,当然不是题目的问题,还是因为当时的气氛太过于严肃的问题。但我努力让自己保持冷静,努力在脑子里搜索着在Drill insight里学过的种种,最后我尝试用Divide and Conquer来进行解答..虽然解答的过程有点煎熬,但好在还是解出来了...

HR看完我的解答以后,他又抛出了一个更加深入的问题来,“假设你正在处理一个Big dataset,并需要频繁地对它进行查找操作,你会选择用哪种数据结构,为什么?”

第二个问题出来以后,又又又让我陷入了沉思...我学过很多数据结构,比如Hash Table、Red-Black Tree等,但每种数据结构都有其适用的场景和优缺点。后来我尝试着根据Big dataset的特点和查找操作的需求,分析出来了几种最具可能性的数据结构,并给出了我选择它们的理由。

HR听完以后,似乎还挺满意我的分析 ..

接下来就是第三个问题了,对方给出了一个关于算法优化的问题,“假设你有一个Sorting Algorithm,但它的时间杂度是O(n^2),你会如何将它优化到O(n log n)?”这个问题对于我来说是有难度的..并且还是不小的难度..

因为我在Drill insight的时候,当然是学过算法类的题型,但是就是一直没有深入的去研究过它们的优化过程...后来我尝试着从最基本的思路出发,结合一些常见的优化技巧,比如Divide and Conquer、Recursion等,一步步推导可能的优化方案。

在接下来的几轮面试里,我凭借着在Drill insight里学到的扎实基础和不断累积的经验,一一化解了HR给出的一系列刁钻问题,最终我当然是成功拿下Amazon Offer啦~!

我觉得这条路真的很难走,但是坚持和努力真的很重要!遇到一个好的老师也很重要!所以也祝你们成功上岸!

更多案例

  • 班主任责任制,及时追踪进度
  • 5大互动平台,7天24小时答疑
  • 全明星导师,全程实时直播授课
  • 1V1简历修改与内推
  • 3+1模式,举一反三训练方法

即将开课,
联系Drill课程顾问,关注我们获取最新信息

了解详情
可扫码添加顾问
WeChat QRCode

微信

Thank you. Your message has been sent.

    免费预约服务

      领取求职礼包