一亩三分地论坛

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

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

Amazon 最新 群面面筋 !!!!

[复制链接] |试试Instant~ |关注本帖
chensheng 发表于 2016-3-25 23:09:37 | 显示全部楼层 |阅读模式

2016(1-3月) 码农类 硕士 全职@Amazon - 内推 - Onsite |Otherfresh grad应届毕业生

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

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

x

大家好本人4月1号就要参加群面了 这是我收集的面筋希望对要参加的同学也有帮助 ,本来是special interview 的,amazon 那个hr 我也不好吐槽了,随意安排时间,随意改,呵呵哒~~~

进入正题

题目是广告系统,就是阿妈总想要在网页上显示广告,网页被分成8个部分,不同的部分有不同的权值乘数(multiplier),从10.3。每一条广告都有自己的权值,每个广告可以在特定的时间出现在几个可选的位置。这个project被分成了三部分:schedulingselectionoptimization,每个人选一个部分做。


LZ
做的是selection,主要说这部分。有这么几个输入文件:广告的ID和权值;网页每部分的权值乘数;某一个时段需要出现广告的位置;某一时段广告可以出现的可选位置。目的就是要某一时刻网页上的权值与权值乘数的积的和最大。
题还是原来的那道题, 广告的schedule, selection,optimization;
我给大家说说每个具体的input 和output, 题目就是前面有人发的那个.
schedule:
input: scheduleRequestInputStream(大概是这样, 就是一个写好的io, 可以直接读文件的, 你不用去管他怎么实现的, 读出来的东西会放到一个要scheduleReuques的类里面, 这个类里面有id, location, starttime, endtime),HashMap<String,Integer> contentScoreMap(content id和对应的value),
HashMap<String, Double>locationValueMap(location 和他对应的value).
output: 用一个他给你的ioout输出valid 的schedule和被reject的content, 也不需要操心这个io.
selection:
input: scheduleInputStream(应该是这个名字,用来读valid的schedule),selectionRequestInputStream(重点说下这个: 这个input会把读入的文件写到一个叫selectionRequest的类里面, 这个selectionRequest里面有两个东西, 一个是int time, 还有就是一个List<String>locations, 待会儿输出的时候你需要把这个locations里面每个location对应的content输出), 剩了的就是contentScoreMap和locationValueMap这两个了. selection有两个要求: 1. 要尽量让整个页面的value*score和最大.2. 同一个content不能同时出现在两个location上. 如果不能满足这两个条件, location可以为空 .
output: 用它给你的output输出一个row, 这个row的格式是:时间, 每个selectionRequest里面的locations里面每个location对应的content,还有整个页面的value*score和. 其实输出你不需要管,只需要调用他给你的io里的方法输出就是了
Optimization:
和题里面差不多的, 就是多了一个要插入的content的list吧 好像是这样,我就没打算做这个,所以没咋仔细看.
最后给大家要注意他会给你一个叫testdriver的class, 你可以用这个去读文件,然后把输出写出. 但是这个东西你路径没配置好好像会报错,所以要注意. 其实也不需要太多关心, 最后只上传你做的那部分的那个class就行了.
,对了, 那三个部分是分别存在三个class里面的, 然后每个里面有个public static的方法, 这就是你要去实现的.
就这么多了, 想起了什么再来加.
. from: 1point3acres.com/bbs

但是和面官交流的候感不是很关心你的code,倒是一直用什么数据构,这样有什么benefit,开始用了一个神奇的数据构,询问发现好像没什么好就按照她推荐的数据构重新弄了,不知道这样会不会分。整体感官都挺好但是洋洋地感,就是我一直在也很少问问题,看到你的如果有问题上指出。
整体的建如下:
data structureextremely important.感觉这是他考察的重点吧,不不刻不在建议说多think about your data structure.
想找相似的题目练练怎么办??(来自后面面经)
“上topcoder或者其他网站找一些群面似的目(真正目很NDA也不方便,但大致都是一些shipping, schedueling 目,就是Amazon会实际问题化版),自己尝试着做一下,再看看人是怎么做的。在做的候一定要自己几个问题(我什么要用个数据/算法,有没有alternatives可以用,如果有,比各种不同数据/算法的劣。当前solution下,如果数据量很大怎么?如果自己很长时间(比如3个月半年),如何化?在现实会遇到什么问题在的solution考到了,如果没有,怎么improve)。如果英不是太好的,在练习尝试把自己的解法以及问题出来,因为这是到候你跟proctor interview的候会讨论到的。4. 熟悉IDE和基本的library(如果忘了也没关系,到候可以google)”
璁哄-------
(题目结束,后面是根据面经摘选出来的概率最大的评分标准)
---------------------------------------------------------------------------------------------------------------------
麻的朋友讨论过招人的准,拿出来大家分享一下
最重要的是codequality。 最好是clean code,简洁有效。数据选择合理。. From 1point 3acres bbs
其次是算法高效或者creativity种的。
在code于hire与no hire之候,会看leadership,teamwork种。
从以前的面经可以看到注释,leadership和合作精神也很重要(以下摘自后面面经)
一共码了200行吧,注释和代码各100行左右。感觉写注释在group interview是非常非常重要的。
“下面几点是Amazon的面试官告诉我的在groupinterview的加分项,需要格外注意。
2.1 communication和leadership非常非常重要。proctor虽然坐在屋子中间,但他们在时刻注意大家的讨论情况,并且在默默记录。其次别闷头狂写,主动问候别人how is going甚至主动帮助别人解决问题都是你的bonus。.1point3acres.com/bbs
2.2 一定要跟proctor解释清楚自己的思路,用图,说慢点。重点说你用了什么数据结构,为什么用那个,有什么risk,有什么好处,如果用java,一定要熟练Collection里的数据结构,尤其两种List,HashMap,PriorityQueue,知道他们各种操作的时间复杂度和优缺点;你用的算法是什么,复杂度是什么,还能不能更优化。这里的bonus是你知道这个task的多个解法,比如greedy和DP,虽然DP可以得到optimal的result,但是greedy算法的时间复杂度更低,可读性更好。要是能做到这点,offer基本就到手了。
2.3代码方面,proctor告诉我他们其实之后基本不看代码,因为只要知道了你的算法,然后看到你的代码能work,基本代码这块就够了。但是代码里注释要完全,代码一定要写得干净。“
补充内容 (2014-10-15 10:35):
对了,group interview基本当天面完之后几个proctor开个小会就已经做出决定了。之所以一周左右通知是因为他们需要把结果反馈到HR那里,再由HR统一一个个通知。“

.1point3acres缃
可能失败的原因:
“因为LZ被拒了,所以下面总结的这些经验也不一定对,大家随便看看就好。
1. 从简单的solution开始。LZ面之前已经知道了这一点,但是写的时候不知不觉就在优化上花了太多的时间,导致最后来不及写main,程序跑都跑不了。所以写的时候注意下时间。
2. 多交流。不得不说老美这方面还是要厉害一些,旁边组的老美coding期间交流很多,中国人的话大部分都是分完工之后就开始埋头写自己的代码了。
3. 重视基本的数据结构。面试官会特别问用什么数据结构来实现某个功能或者保存某些数据,这种时候虽然不像传统算法题有具体的时间或者空间复杂度要求,但是你要说得清楚你为什么选这个数据结构,它有什么优点。
1.刚开始拿到任务时候赶紧看内容,比较多,速度看,看完马上选择自己想要的part。
2.开始就用最简单的方法去完成,别想各种复杂的算法,就用暴力方法解决,至少会有一个结果。下午再想一下优化。
3.one on one的时候会问一些你代码中时间复杂度和空间复杂度的问题,要好好想一下,时间我觉得不是很紧,能得到结果最重要,然后再想算法!“

  
刚接到通知,被拒了,晕。
  
上周五去参加的群面,题目就是那个广告投放的题,分3个部分,schedule,  selection, optimization 我选的第一个,之前就听说是最简单的一个,做起来也却是简单,三下五除二就搞定了,然后还想办法用别的方法做了一下,最后一共用了3种方法写了出来,选了一种最快的方法。中间被叫出去谈了2次,都给了优化的意见,我觉得聊的还不错。. 1point3acres.com/bbs
  
没想到居然能挂,本来以为妥妥的了,因为听别人说做出来就差不多了,amazon狂招人呢在,我这写的代码自认为质量也还成了,该注释注释,到时真的没有几行代码,100行都没到吧,难道是代码过少了,另外可能就是跟面试官没交流好。总之,挺费解的。. 1point3acres.com/bbs
  

  
代码要规范,命名、注释等要注意. 整个群面过程中要体现cooperation和leadership,要主动组织
  
和引导小组讨论,主动发言。
  
面试前准备小细节:
1.    上来建议仔细阅读readme file 把project 按步骤import 同组的印度妹因为没有照readme做 捣鼓路径捣鼓了半个小时
2.    读题要快,拿到目开始讨论后,会有面官在周围记录每个人的表,所以迅速读题,迅速开始讨论
3.    零散建议
* 要有看懂别人代码的能力。 先看清楚提供的代码有些什么类,别自己写了半天发现这个类早就实现了。这个非常不好。。一来你实现的估计比提供的搓,二来说明你阅读别人代码有问题.
4.    和面官聊得候先自己那部分的思路然后就是follow up,比如如何化整个系,如何测试模大了怎么 etc.
5.    尽量不要有hard code,重要的界条件最好用个静全局量。
6.    看代,有些function/class已有了,写完了才发现
7.    范,按照 java doc 的准来,不会的用 Oracle 官网学一下。
8.    其他人的表现对你自己的影响应该不大,主要看个人表,开始写之前大家聊聊就行了,开始写了之后大家也就没空聊了。

9.    中午的面官是不会提示edgecase的。下午我把完整的程序运行出来后,发现有些奇怪的出才发现edge case。我edge case是个面很重要的一个环节edge case没运行出来前很想到,运行后才能发现。最重要的是,下午15min的面,那个面官竟然会直接你有没有考edge case,如果你事前没发现,根本就知道他在什么。所以保你的程序能运行果很关



最后,祝大家面试顺利,早日拿到心仪的offer


评分

2

查看全部评分

Nammmi 发表于 2016-4-1 04:42:06 | 显示全部楼层
我3.24面的,还没结果。其实自我感觉不算很好,我做的第三题,因为用的C++,折腾环境就浪费了一个多小时,然后第一次30分钟面试的时候,只写了最基本的实现,还在debug。因为第三题算是比较open的,所以面试官提了很多改进的方向。后来没什么时间实现了,就简单地写了下注释和description。
但是我有个朋友做第一题,做的挺好的,面试的时候面试官觉得他已经没什么可改进的了,然而被拒了。我就不是很懂了,这是什么标准。在群里也看到过有小伙伴说做第三题,实现了好几个方法,代码也很顺,但是被拒了。我在考虑AMAZON是不是也知道题可能泄露出去了,并不是那么注重你最后交的代码,而是更加看重面试过程中的思考过程,一上去就把最优解给他是不会有好印象的,最好讲讲你为什么会这么想,有遇到过什么类似的问题对你有启发的。还有,如果准备第二题的小伙伴除了DFS暴力解法,要准备做一些优化(虽然我觉得优化都是很扯淡的,但是一定要表现出来你有这个想法。)我准备等我的结果出了再仔细写面经。。怕现在胡说坑了人
回复 支持 1 反对 0

使用道具 举报

desperate500 发表于 2016-3-26 00:08:09 | 显示全部楼层
我4.4的 祝好运!
回复 支持 反对

使用道具 举报

wujingzhe 发表于 2016-3-26 10:10:18 | 显示全部楼层
LZ我也收到了四月一号的onsite 不过我想reschedule 因为31号和一号都要上课
回复 支持 反对

使用道具 举报

viveo 发表于 2016-3-29 15:40:42 | 显示全部楼层
不好意思,请问LZ有复习资料或者代码么?我想试着写一写,但是没有已经写好的类以及testcase。(当然如果有之前大神写好的代码实现就更好了……)

如果有的话,可以发我一份么?邮箱viveo.hao@gmail.com。谢谢~~~~~~
.1point3acres缃
回复 支持 反对

使用道具 举报

machen982003 发表于 2016-4-4 11:30:16 | 显示全部楼层
楼主这个太有用了, 先留名收藏!
回复 支持 反对

使用道具 举报

nszhai0623 发表于 2016-4-4 18:31:46 | 显示全部楼层
赞LZ的总结,靠谱收藏一下呐~
回复 支持 反对

使用道具 举报

本版积分规则

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

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

关闭

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

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

custom counter

GMT+8, 2016-12-6 16:17

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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