一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 553|回复: 2
收起左侧

Amazon 3.10 intern 面試

[复制链接] |试试Instant~ |关注本帖
lianngg 发表于 2015-3-13 02:08:25 | 显示全部楼层 |阅读模式

2015(7-9月) 码农类 本科 实习@Amazon - 内推 - 技术电面 |Other

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

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

x
3/10面試,記憶還算清楚。(文長抱歉)

由於在接電話前就先接了兩通phone interview所以當下沒什麼好慌的。

總共只有寫一題code(我也不知道為什麼....希望不是因為我答的太慢...)

是個印度人,問我為什麼考慮amazon,然後我說學校project有用過aws
他就問問那些project在幹嘛,然後開始問題目

1.找出一個int array裡面最多重複的
我問他:是說出現次數多於一半的(leetcode majority)? 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
他:如果是的話你打算怎麼做?. 1point 3acres 璁哄潧
我說:用一個counter加加減減,然後分析一下time&space
他說:good,那次數不一定超過一半呢?
我說:hashmap,然後最後再找map裡面最大的
他問了一下time & space,然後問了map & unordermap的差別(我用c++)

之後,說不用hashmap的方法,我說可以用radix sort or bucket sort 可以平均達到O(nk) 可是這樣要花一些space在sort
各別要我分析了一下,然後就讓我做題,說sort可以讓我直接用system的。
. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
大概一分鐘寫完,短短的。
他:如果要回傳counter和回傳最多次數的分別怎麼做(心想:不是一樣?就換成max_count)
然後問我的code會不會有模糊的答案,我說會:因為input是1,1,2,2 (個數一樣)的話會回傳第一個(看max_count和temp_max怎麼判斷的)
他問我怎麼解:我說可以傳一個值例如:-1。然後讓我寫了一下
後來他問:現在這樣會不會有問題?我說會:假如input是 -1,-1,1答案本來就是-1這樣不知道是因為錯誤(沒有解)還是-1. 1point3acres.com/bbs
問我怎麼解決:我說可以寫exception 或是改變某個flag,他讓我寫了一下.1point3acres缃
int findMostRepeat (vector<int> &input, bool &flag)
他說:GOOD,沒問題了(印度人真的很會一直good, right, awsome....誰知道他到底在想什麼) 鏉ユ簮涓浜.涓夊垎鍦拌鍧.

中間我有個想法就跟他說:
我說假如可以先走遍一次array,知道input的int range的話,可以把element value 當成index value,去改變原本array的值。
最後再走一次整個array,最大的那個element在的index就是原本最大的int value!
他說:good,那這個作法的time呢?我說:O(n) 但是要走三次,如果n很大,其實時間也不少。

之後就沒讓我做題目了,不知道是不是放棄我了==
後來開始問stl container的問題:
1. what is stack?
我:LIFO

2. how do you implement it in easist way?
我:vector,直接就有puch_back, pop_back

. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
3. 不能用vector,用array行嘛?
我:像是malloc一樣先給定一個default size,如果超過就要new一個新的然後搬移data。(他問我這樣做的time 是多少). From 1point 3acres bbs

4. 那怎麼樣可以動態給memory size
我:linked list,可以用個指標放在head and tail


5. 這樣delete呢?
我:pop tail, and update new tail(缺點要重新走一次找出tail,除非用double link)


6. 如果不能用double link?
我:那就push時放在head,pop時也delete head,只需額外一個pointer就好。

7. good! 那你知道什麼是queue?
我:FIFO,不過C++還有很特殊的priority queue就是pop the highest priority。

8. 怎麼用queue做出stack?
我:用兩個queue,交換。


9. 只用一個呢? 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
我:每次要pop之前,把最前面的放到tail。可能會要額外空間

10. 好點的方法?
. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴我:queue.insert(queue.remove())這樣就不用,但是還是要一直搬移。. Waral 鍗氬鏈夋洿澶氭枃绔,

11. 可以用linked list做嘛?
我:可以,那就一樣。只是會有一個問題,同時要提供stack and queue的功能。勢必有一個pop會需要uprdate pointer. 鍥磋鎴戜滑@1point 3 acres

然後,各別分析一下。他就說:ok 我們時間到了(每次聽到都不知道是好還是壞,是答太慢所以時間到了還是怎樣...)

最後問了一些aws使用上遇到的問題(他說他是aws web console的),我提供一些想法
他說他們公司內部有在做,不過還不能跟我說(= =),最後就說 it's good to talk to you! bye 就直接掛掉電話了!!!
我:..................


希望會有好結果,若是真的要被拒絕。
也不知道是栽在哪邊了 Orz

祝大家好運.1point3acres缃

评分

1

查看全部评分

hsnu112305 发表于 2015-3-14 15:06:51 | 显示全部楼层
恭喜LZ,好人一生平安
回复 支持 反对

使用道具 举报

LuckyGemini 发表于 2015-3-17 07:24:08 | 显示全部楼层
all the best LZ!
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

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

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-11 08:59

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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