百度面经(实习)

百度面试有感

 

       自己不知不觉就大三了,准确地说是大三快结束了,大家都忙着找单位实习。因为软件工程的大四是没课的,在实习时间上是优于其他专业的(如果翘课去实习当我没说),所以身边的同学开始参加这个公司的宣讲会那个公司的宣讲会,投各个公司的简历,大家都忙得不亦乐乎!我肯定也是坐不住的,于是就去投了百度、阿里和腾讯。怎么说呢,我投阿里是最早的,进度也是最慢的,但是作为实习的话我还是比较偏向于百度,毕竟想去中国最先进的城市(北京)转转。好了,言归正传,因为我写这篇文章主要是想帮自己的其他同学知道一些面试的技巧,以及相关的知识。

      首先声明一点,所谓的面试技巧都是要知识作为基础的,大家不要妄想自己懂的不多,临时冲刺一下相关知识点,就可以浑水摸鱼。如果这样,那么面试第一轮你就可能被刷下来了。目前的情况,阿里我过了两面,第三面还在路上,百度近期发放实习offer,腾讯还没有笔试(郁闷中……)。

       那么就以百度作为例子讲一下吧。

       我先投了阿里,过了2周后,又投了百度。没想到第二天百度就来了面试电话。第一面还是很简单的,也是很基础的,先是让你自我介绍,然后问你简历上的东西,再问一些面试官自己觉得有意思的东西(一般这个答出来还是有点难度的),最后则是让你问他问题。首先说自我介绍,大家一定记得做好准备!因为三面都会让你自我介绍,要求就是能流畅地说出自己的基本情况以及大学的生活状况(高中初中就不用说了),突出自己的亮点,注意一定要突出自己的亮点!因为你只有让面试官知道你擅长什么,他才会知道到底想问你什么,否则他只能问他感兴趣的,而那,一般也就是你不会的了,这是显然的,因为他们平时从事的都是偏实际应用的,而这方面一般都是我们本科生不太擅长的,因此面试可能马上就会陷入被动!故我们应该尽量避免此种情况的发生。自我介绍完之后,就到了面试官问问题的阶段了,这一段也是最主要的一部分,如果这方面想答得好(一般关系到你能不能继续面试或者拿到offer),就需要你自我介绍和简历做得好了,简历上一定要写自己擅长的东西,同样突出自己的亮点才可以。一般面试官会按照简历和你的自我介绍来提问问题看你到底懂还是不懂,所以简历一定要实事求是。譬如你本来不会java,但是为了好看,你写了自己精通java,那就是自己给自己出难题了。之后面试官会问一些比较综合的东西,也就是他自己提问的问题,这里他不会让你给出很详细的结果,但是却会让你自己说说你解决该问题的思路。个人觉得,这个还是很能体现一个人的水平的,这时候一定不要慌,说一下自己的想法就可以。

       当然,面试官面试的前一阶段肯定不止会问你写在简历上的东西的,还是会问一些基本的问题,像操作系统(Linux)的进程问题,数据库的问题等等,自己会的就说会,不会的就说自己不会,同时要说“但是自己比较熟悉……”从而引领面试官去提问自己会的,如果自己实在不知道……那就很无奈了!

       现在记得,第一次百度面试时,面试官主要提问了一些数据结构和算法的问题。我从而发现一个规律:数据结构一般会提问红黑树,二叉树,B-Tree这些基本的概念以及相互之间的比较和实现;算法方面则会让你去用栈模拟队列等,还算是比较基本的吧。因为我自己比较擅长这些,所谓面试官主要提问了这些,不过后来也提问了进程的调度问题,虚拟内存问题等,虽说答得不是很精确,但是也说出了那个意思,所以一面就这样马马虎虎过了。没想到的是,当天晚上百度就打电话告诉我通过了,并且第二天要进行二面,效率很高呀,要知道我过了阿里一面后,第二面又让我等了2周。

        现在想来,百度的二面其实和一面的流程差不多,就是难度加大了。记得当时面试官提问了关于储存和提取字符串的问题,当时我想到了哈希,然后就把哈希的东西问了一遍,真的是问了一遍,首先哈希是干嘛的,怎么实现的,用到了那些数据结构,效率高的原因是什么,怎么控制rehash,哈希函数的选择的标准是什么等等,只能说自己之前搞竞赛的时候写过的hash的题目还是比较多的,因此都答上来了(这也是二面通过该的主要原因吧,个人认为),之后还问到了hashmap和hashtable,幸亏我看了源码,因此也都答上来了。之后面试官又出了个图论的题目,我用到了缩点,也许面试官的标准答案不和我的一样,我就给他讲了讲,估计他也没听懂,最终结果就是出的算法和数据结构的题目我都差不多过了。之后我就郁闷了,毕竟二面,问的东西还是很多的。问到了Linux的底层,分布式,大数据……我都不怎么会。但是我都说了自己的想法,不知道对不对,反正最终的面试的答复就是你的思维很活跃(我觉得言外之意就是小子你都不懂但是还是很能说啊)。于是后来二面就结束了,3天之后三面来了。

       现在看来二面还是有一定的运气在里面,但是运气是不是好和自身的实力有关,你要懂才能说不是吗?但是平时多去学习一下别的东西还是很有用的,而且要了解的深才行。比如一些基础的数据结构要了解到源码级别。

   对了,另外补充一下,线程,线程池,锁相关的知识一定要学,这些肯定是要问到的,而且问的还是比较深的,像synchronize,和lock的区别等等。

      然后就到了三面了,三面虽说不是技术面试,但是也不要觉得很容易过关,因为如果没有去准备就会觉得没啥可聊了,我的百度三面就是学习的情况+竞赛,就这两个话题谈了1个多小时,因为这是和面试官聊天,你就要让面试官觉得你有话可聊才行,如果聊了几分钟就挂电话了,估计就没戏了,所以这里就要求你一定要找到一个可聊的话题。在这方面,我和面试官先说了一下大学生活的态度,肯定是很积极地嘛,然后就是学习成绩,因为我的成绩很好,所以就把这方面说了一下,比如怎么挑灯夜战的呀巴拉巴拉,不过聊得最多的还是竞赛,自己怎么参加的竞赛啊,去哪里打的比赛,中间遇到了什么困难,怎么解决的啊,聊着聊着就一个多小时了。其实我觉得三面就是你要让面试官觉得你有话题可聊,然后自己要表现的很积极,给对方留下好感,那么对方才会决定要不要你。

      总的来说吧,自己要学点东西,这是必须的,其次要有自信,让对方觉得你很自信,这也很重要。还有一点就是摆正心态,我从来没有想着要一次就过,这次过了我觉得很幸运!其实,最初的目的我就是想去锻炼一下,不过说实话,这段时间是我学东西学的最快的时候,因为我知道了有很多好玩的东西我没有去学,通过聊天我才知道哪些知识很重要,我才有针对性地去学。所以大家都应该多去尝试,多去积攒,最终总有会通过的一天,加油!

                                                                                                                                               2017-4-1复临舍

                                                                                                                                                            

 

 

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值