百度校招面试经验
一到九月份,就开始了各种笔试。每天晚上七点到九点,大家都可以在机房看到我一个人在那里自言自语。2018年09月16号晚上,我和我女朋友笔试完在外面吃东西时接到百度的面试通知。接到电话的第一反应时,这不是骗子吧?百度笔试我能够过?后面我看到是北京的电话,我就有点相信了。电话里面试官跟我说,什么时候有空?能不能去武汉面试一下?我说什么时候都有空,哈哈!
到了武汉之后,我真的是没有一点准备,连面试流程是什么样子的都不知道,还以为技术面有群面。每一个面试官在一个房间,每个人一个小时的面试时间。以下是面试具体内容:
1、两分钟的自我介绍;
2、自我介绍完了之后,面试官开始让我手写代码,算法题
第一题,在玩微博的时候,A评论了该条微博,B也评论了,并且B点赞了A的评论,C又点赞了A,B的评论,反正就是那种互相点赞的那种。问你怎么将他们这样点赞关系,按照层次关系,一一显示。
解题思路:用dfs对每个评论的下面点赞进行按照深度进行遍历,深度就是他的层次。
第二题,给你一个数组,找出出现次数超过一半的元素,时间复杂度O(N),空间复杂度O(1)。
解题思路:说实话这道题,面试的时候我也没写出来,后面在回去的路上想通了。我们要紧紧抓住出现次数超过一半这个点,意思就是其他所有元素的出现次数也没有他的次数多。
代码:
Int find(int *a,int n)
{
int ans;
for(int i=0,cnt=0;i<n;i++)
{
If(cnt==0)
{
Cnt++;
Ans=a[i];
}
Else
{
If(ans==a[i])
Cnt++;
Else
Cnt--;
}
}
Return ans;
}
3、面试就问我是不是擅长c++,我说是的。然后就开始问我的项目。问我的第一个项目是怎么做的?有什么技术难点(简历上的项目一定要非常了解)
4、然后就问了c++中虚函数,纯虚函数的区别和作用,然后继承与多态的关系,new和malloc的区别。
5、然后问了操作系统的题目,Windows下内存是如何管理的?分段和分页?
6、最后就问了网络原理。
总结:虽然没能进入百度,但是这是我与bat这些大公司距离最近的一次。通过面试,我觉得编程基础、算法、数据结构比较重要,另外最重要的是,基础,基础,基础。不管面试什么岗位,学校里面的基础课程非常重要。
腾讯校招面试经验
腾讯我是学长内退的,对这个期望最大吧。我是2018年09月09号笔试的,投递的是PC客户端开发。腾讯笔试完,感觉肯定过不了,万念俱灰。结果第二天早上八点,收到腾讯的性格测试邀请,哈哈,过了。腾讯的面试是09月21号,我这次准备了十几天,自我感觉挺好的,然后就兴高采烈的跑去武汉面试。
面试流程如下:
1、先是自我介绍两分钟,说一下自己的情况
2、腾讯面试的第一道题就是,性格测试。
3、性格测试之后,就是两道编程题和一道智力题
两道编程题很简单,对于有过ACM经历的我,分分钟就写出来了。
智力题很有意思:有一个10L的油桶,里面装满了油。你要用一个3L的和7L的桶将他平分成两个5L的。
解题思路:10升倒给7升,7升倒给3升,3升倒给10升,10升桶里6升油,7升桶里4升油;
7升倒给3升,3升倒给10升,7升倒给3升,3升桶里1升油,10升桶里9升油;
10升倒给7升,7升倒给3升,10升桶里2升油,3升桶里3升油,7升桶里5升油;
3升倒给10升。
4、然后就开始问专业知识,map的底层是如何实现的,这道题我刚好复习过。
Map底层为红黑树,有序,不重复。
红黑树的实现原理。
双向链表的实现。
堆与栈的区别
全局变量,静态变量,静态局部变量的生存周期和内存分配
如何解决网络拥塞
IP数据包的字段
5、问我参加这么多比赛,最重要的是哪一个?为什么?
6、问我考研吗?这个问题需要谨慎回答。你肯定不能回答你想要考研,因为你考研,就肯定不会来上班了
面试总结:腾讯面试跟百度面试差不多,看重的是基础和逻辑思维能力。另外一个就是要有一定的项目经验,让面试官觉得你有不错的动手能力。虽然腾讯没有进入hr面,但比百度面试更近了一步。
生活寄语:人生十有八九不如意,不可能事事都能如自己的心意的。面试过程中,有收到面试通知的兴奋,也有等待下一轮面试的煎熬,当然也有被刷的失望。这次机会到来时,我还没有准备好,没有什么好遗憾的。我觉得越大的公司,越看重你的基础。好好准备,迎接下一次机会