一亩三分地论坛

 找回密码
 Sign Up 注册获取更多干货
码农求职神器Triplebyte:
不用海投,内推你去多家公司面试
Airbnb 数据科学职位
in analytics and inference
天天打游戏、照样领工资,
你要不要来?
把贵司招聘信息放这里
查看: 1457|回复: 13
收起左侧

Amazon summer 2015 internship 面积

[复制链接] |试试Instant~ |关注本帖
litieZhu 发表于 2015-3-10 10:38:47 | 显示全部楼层 |阅读模式

2015(1-3月) 码农类 本科 实习@Amazon - 校园招聘会 - 技术电面 校园招聘会 |Pass

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?Sign Up 注册获取更多干货

x
前几天刚收到Offer 终于熬出头了
为了回报论坛来分享一下我的Amazon 实习面经. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴

去年14年10月份投的on-campus 那时候recruiter的统一回复是 15年1月低会给我们学校统一OA. 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
到了今年的1月低 果然群发了 OA invitation.
于是大家都聚到了一起 开始 OA, recruiter presentation后准备开始OA, 结果大家的login credential都过期了 (recruiter 临时改OA地址,wifi连不上搞了很久 迟了半个小时)
搞了很久, recruiter也放弃了 让大家回家等 take home assessment。
等了一个星期后 直接联系我 final round phone interview。。。
是两轮 45mins back to back的。
第一轮. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
面试官是一个女生, 让我介绍了一下我自己 最习惯什么编程语言,. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
然后让我implement atoi, 一开始没有做任何corner case checking
后来被提示之后分别做了 负数的checking 和 input里出现字母的checking。
这题结束后 问了我关于hashtable的问题,让我解释hashtable的definition 和 runtime,
然后还让我 用 pseudocode 写了 hashtable的 put 和 get,. more info on 1point3acres.com
并且让我写 collision的处理。
这里稍微有些勉强, 因为 并没有强力复习collision。

第二轮
面试官是一个男生, 让我介绍了一下自己,让我描述了一下在team里遇到过的obstacle并且是如何处理的。
问了我如何用两个stack 来实现 queue。
问了我各类tree traversal的方式和他们的顺序。
大题就问了一题 就是leetcode上的two sum。. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
面试官加的额外要求是return全部符合的pair(ascending order) 并且 array里会有duplicated element, 只要index不一样 都算unique。
整个面试就做了这么一大题。。
.鏈枃鍘熷垱鑷1point3acres璁哄潧
面完后一周后收到acceptance 把我分配到了marketplace team

评分

2

查看全部评分

ammmmy11 发表于 2015-3-11 14:49:14 | 显示全部楼层
楼主two sum那题要求是return全部符合的pair(ascending order) 并且 array里会有duplicated element,是不是用hashset保存pair然后排序的话是用comparator吗
回复 支持 反对

使用道具 举报

 楼主| litieZhu 发表于 2015-3-12 00:25:13 | 显示全部楼层
ammmmy11 发表于 2015-3-11 14:49
楼主two sum那题要求是return全部符合的pair(ascending order) 并且 array里会有duplicated element,是不 ...

function return 的 type 是 vector<vector<int, int> >, 因为就算是duplicated pair 只要index不一样也要算到结果里去 所以用了 vector. 然后 index的监测是在找到potential pair后看index是否已存在。 two sum的 O(n) 做法是依次把element添加到hashtable<int, hashset<int> > 里面, 每次添加一个新的element e, 马上检测e是否能和hashtable里的某个element e' 组成pair 并且 e 和 e’ 的 index 不吻合,因为是每次添加e的时候检测的 所以 e的index总是新的。顺序的条件我可能帖子里可能没说明白。其实是要求每个pair里的elements要小到大。 所以当时就是直接自己写了一个简陋的sort int function 然后用上了。
回复 支持 反对

使用道具 举报

松岩 发表于 2015-3-12 01:08:34 | 显示全部楼层
litieZhu 发表于 2015-3-12 00:25
function return 的 type 是 vector, 因为就算是duplicated pair 只要index不一样也要算到结果里去 所以 ...

na 2Sum yong hashmap de le
回复 支持 反对

使用道具 举报

松岩 发表于 2015-3-12 01:09:10 | 显示全部楼层
litieZhu 发表于 2015-3-12 00:25
function return 的 type 是 vector, 因为就算是duplicated pair 只要index不一样也要算到结果里去 所以 ...

array.sort() ye ke yi ba
回复 支持 反对

使用道具 举报

 楼主| litieZhu 发表于 2015-3-12 01:28:46 | 显示全部楼层
松岩 发表于 2015-3-12 01:09
array.sort() ye ke yi ba

恩 可以用自带, 我当时用的是c++ 可以用自带的sort
我是索性自己写了
回复 支持 反对

使用道具 举报

松岩 发表于 2015-3-12 01:31:50 | 显示全部楼层
litieZhu 发表于 2015-3-12 01:28
恩 可以用自带, 我当时用的是c++ 可以用自带的sort
我是索性自己写了

C++ Niubility. Always gave me problems in interview, then switched to java /python
回复 支持 反对

使用道具 举报

ammmmy11 发表于 2015-3-12 04:48:21 | 显示全部楼层
哦哦,可不可以这样理解, {2,7,10,13},target是9, 那么只返回{1,2},{1,1,1},target是2 ,返回{1,2}{1,3}{2,3}
回复 支持 反对

使用道具 举报

 楼主| litieZhu 发表于 2015-3-12 04:58:33 | 显示全部楼层
ammmmy11 发表于 2015-3-12 04:48
鏉ユ簮涓浜.涓夊垎鍦拌鍧. 哦哦,可不可以这样理解, {2,7,10,13},target是9, 那么只返回{1,2},{1,1,1},target是2 ,返 ...

对的 当时就是让我这么做的!
回复 支持 反对

使用道具 举报

 楼主| litieZhu 发表于 2015-3-12 04:59:28 | 显示全部楼层
松岩 发表于 2015-3-12 01:31
C++ Niubility. Always gave me problems in interview, then switched to java /python

哈哈 我刚好跟你相反 一开始一直python 后来又改成c++了
回复 支持 反对

使用道具 举报

 楼主| litieZhu 发表于 2015-3-12 05:03:26 | 显示全部楼层
ammmmy11 发表于 2015-3-12 04:48
哦哦,可不可以这样理解, {2,7,10,13},target是9, 那么只返回{1,2},{1,1,1},target是2 ,返 ...

“每次添加一个新的element e, 马上检测e是否能和hashtable里的某个element e' 组成pair 并且 e 和 e’ 的 index 不吻合,因为是每次添加e的时候检测的 所以 e的index总是新的。”

面试过的有点久 我自己都记混了 以下是纠正

一开始我的方法是 O(2n) 是先建立好map 再过一遍array 所以需要sort each pair
后来改成 一边建map一遍找pair, 就不再用sort了 , 因为 e的index总是更大的那个
回复 支持 反对

使用道具 举报

 楼主| litieZhu 发表于 2015-3-12 05:03:44 | 显示全部楼层
松岩 发表于 2015-3-12 01:09
array.sort() ye ke yi ba

“每次添加一个新的element e, 马上检测e是否能和hashtable里的某个element e' 组成pair 并且 e 和 e’ 的 index 不吻合,因为是每次添加e的时候检测的 所以 e的index总是新的。”

面试过的有点久 我自己都记混了 以下是纠正

一开始我的方法是 O(2n) 是先建立好map 再过一遍array 所以需要sort each pair. 1point3acres.com/bbs
后来改成 一边建map一遍找pair, 就不再用sort了 , 因为 e的index总是更大的那个
回复 支持 反对

使用道具 举报

松岩 发表于 2015-3-14 01:59:45 | 显示全部楼层
litieZhu 发表于 2015-3-12 05:03
“每次添加一个新的element e, 马上检测e是否能和hashtable里的某个element e' 组成pair 并且 e 和 e’  ...

lz meng da da, O(2n) jiu shi O(n) la

zan lz zhao wan gong zuo hai lai di li kan kan
回复 支持 反对

使用道具 举报

 楼主| litieZhu 发表于 2015-3-14 03:25:25 | 显示全部楼层
松岩 发表于 2015-3-14 01:59
lz meng da da, O(2n) jiu shi O(n) la. from: 1point3acres.com/bbs

zan lz zhao wan gong zuo hai lai di li kan kan
. from: 1point3acres.com/bbs
恩 O(2n) 简化后就是 O(n), 不过当时面试官就问我能不能从 2n 缩减到 n
回复 支持 反对

使用道具 举报

本版积分规则

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明

custom counter

GMT+8, 2017-12-13 19:12

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表