`
charyle
  • 浏览: 164520 次
  • 性别: Icon_minigender_1
  • 来自: 天蝎座
社区版块
存档分类
最新评论

百度面试经历

 
阅读更多

     以前的文章,编辑分类触发敏感被删除到回收站了,弄不回来了,改个标题再发表次。。。

    我是2011年应届毕业硕士生,应聘的是商务搜索的web开发工程师

    百度2010年10月24号笔试,笔试题就5道大题,都比较简单,唯一遗憾的是俺忘记什么叫“大根堆”,bitmap算法和trie树都是面试和笔试必备算法,此次笔试都用到了,最后系统设计题是个WEB系统权限设计,正好最近项目接触ACEGI,将其描述下,所以平时的积累很重要,不要认为现在做的东西没有价值。当天晚上9点就通知第二天面试了。

    25日到了酒店参加一面。直接敲房间门就OK,,百度面试时间很准确,让你下午2点到你就准时敲门就行了,因为其给每位面试者都是1个小时的时间。第一次面试问了很多基础的东西,首先会先看卷子,如果答的好的话他就不会再问了,说我答的不错,一看才48分,没问卷子的事情,直接问技术,问的很详细,如struts原理怎么样的,如何实现的,spring原理怎么样的,如何实现的 ,Hibernate等,随后问道了到了Java线程,socket,反射,动态代理,虚拟机,AOP,GC的策略,除了动态代理忘了和GC的策略不太懂外,其他的都还掌握其核心思想及应用。然后就结束了,最后问了他什么时候会有2面通知,他说晚上或者明天上午

      自我感觉不错的回到实验室,一直等待通知,睡觉起来还没通知,26日上午依然没通知,以为挂了,很伤心中。下午直接去北京了,准备参加27日早上的国家信息安全工程技术中心面试,结果下午5点在北京地铁上收到百度面试,让早上9点,结果约到了27日下午4点,面试官还是很好的。闲话少说吧

       27日下午回到天津赶到酒店,参加二面,今天还是技术面试,问了些简历中项目事情,问的很细,就不详细描述了,如果是你自己做的东西并且深入思考过系统设计的话就都没问题。然后是逻辑题,7g的金子分成3份,以后7天每天给另外一个人1g,要求每天都给,如何分这3分,还有个门禁系统的设计题,设计好表后给个条件,让写sql,sql能写多少种实现就多少种,还问了SOA用过否,它的作用是什么,一个编程题,实现字符串中的反序,如“i am student” 输出“student am i”,感觉都挺简单的,除了门禁系统的设计时候没有想到卡有开门的权限问题外,其他问题感觉都答的不错,后来思考下7g金子问题,应该只有一种划分,面试1了个小时,感觉不错。

        不出所料,晚上回来7点左右接到3面通知。网上查了下都说是经理级别的,问些技术然后就是闲聊,但是还是挺紧张的,第二天早上准时到了,进去就看见桌子上两张纸和一支笔,又是技术面试。不过这次题目明显比上次难了,首先还是问了些项目的情况,然后3道逻辑题,第一个是9个硬币,1个天平,一个其中一个硬币轻,最少几次称量就能一定确定哪个硬币轻。这题做过,2次应该是。第二个问题, 50个红球,50个蓝球,放入2二个袋子中,每个袋子各放入多少蓝球和红球,能使某个人一次随意从2个袋子中拿出一个红球的概率最高。这题思考了半天,开始想设了2个变量,然后求最大值,没解出来,就和面试官说了解不出,他刚开始记,我就突然想到了可以推理下,将蓝和红分别装入2个袋子,然后依次拿一个红球到蓝球袋子算一次概率,再拿第二个,概率应该是递增和递减的,应该能推出来,和面试官说了想法后他点头,让我说最终结果多少,让我蒙下,我说1个红球放入一个袋子,其他球另外袋子,然后又公式证明了下,此题0K了。第三个题还是天平相关的,我是这样理解的,5瓶药,每粒正常的药重10g,其中一个瓶子中一粒药轻了,为9g。有个非常灵敏的天平,如何一次称量就能确定那瓶中药轻了。此题我是这样记忆的,回来查网上都是其中一瓶药全部都轻了,当时此题没答出来,面试官让说思路,我只是说将每瓶药各拿出部分,然后组合称量,再确定,面试官说是滴,最后他将拿出的比例和组合说了下,我没记太清,最后还要根据天平的倾斜程度判断哪瓶药,因此我确认我理解错了 ,应该是一瓶药全部为9g了,记不清是面试官说的还是我理解错误了。 然后是个编程题,判断二叉树是否相同,左右孩子互换也认为相同,要求纸上写出全部代码,简单,很快搞定。最后一个系统设计题,200亿数据,每条1k~1M, 数据的编号为64bit位存储,一个机器16g内存,硬盘无限大,如何设计系统能够快速查询出数据,要求内存利用率高。

我当时一想必然要内存中将索引存储起来,查询到后直接定位硬盘了,当时算的是64bit的索引编号16g内存只能存20亿的索引,因此将200亿数据份10块存储,每块20亿条,当时只想这么多,后来没答上来,而面试官一定要问道怎么存,每个块是什么样的。我最终还是没整理清思路,然后面试时间到了,他问还有什么问题,我说就最后道题如何设计,他和我说思想和你的差不多,分2中情况,第一内存能够存下,第二内存存不下索引。存不下的话硬盘存储就是关键,我问怎么设计硬盘数据存储呢,他说好好看看数据库原理,可以用二级索引。。。因此最后应该还是俺学艺不精啊。现在想起来二级索引很简单啊。

      最后挂了,因为最后一道题时候说的很乱,因为紧张,呵呵,现在想起来唉。。。

2
9
分享到:
评论
5 楼 sunzixun 2011-08-23  
我感觉回答的不错呢。
不行试试别的组, 不过说实话 ,既然读研了,何必搞Java呢 ,已经算不上计算机科学了。
4 楼 charyle 2011-08-10  
技术面试中除了正确的答案可能面试官还会了解你的逻辑思维和理解能力、表达能力、面对困难的心态能一些素质问题。我当时由于很想去百度,所以很紧张,放不开,逻辑有些混乱,可能给面试官感觉也不太好,另外确实没有拿得出手的深入研究的东西。
3 楼 ericslegend 2011-08-09  
不是吧,你确实答得这个水平还没让你过?你要去的是ecom的哪个组?
2 楼 cttnbcj 2011-08-09  
web开发工程师,,,,牛B
1 楼 andyfern 2011-08-09  
感觉楼主还是很厉害的,加油!

相关推荐

Global site tag (gtag.js) - Google Analytics