首页 > 秋招总结(内附C++高频面试题)
头像
I-U
编辑于 2019-11-04 20:58
+ 关注

秋招总结(内附C++高频面试题)

0 写在前面

秋招在牛客网上受益匪浅,主要包括秋招的知识储备、面试经验分享以及招聘信息获取。非常感谢热于分享的牛友们,也想把自己的经历整理出来,帮助到有需要的人。

1 个人情况

楼主普通双211水硕,绩点还行,ACM铜铁选手,本科毕设有一个实验室划水横向项目(C#WebForm框架),研究生搞了一年算法没成果,2019年初决定转C++。在牛客上找了几条C++的精华贴,便照着书单一本一本看,中间掺杂着实验室杂事和小论文的事情,个人的时间规划能力比较弱,复习效果一般般,最终也没搞出个C++的项目。七月末开始疯狂投简历,提前批基本全挂,九月初拿到猿辅导offer后开始转运,十月拿到锐捷、亿联、吉比特offer,十月下旬有幸拿到网易互娱游戏研发、滴滴国际化、百度地图的offer

2 秋招经历

秋招投的基本是C++相关的岗位(没有的就投后端开发),总共投了36+份简历,16家公司给了面试机会,总共与27个面试官进行了交流,最终拿到7offer,每个offer都来之不易,非常满意,感谢这些公司对我的认可,给了我继续前进的动力。

2.1 OFFER(7)猿辅导、百度、网易互娱、滴滴、锐捷网络、吉比特、亿联网络。

2.2 中途放弃的(3)海康威视、拼多多、华为、4399

2.3 失联的(5)字节跳动(1面后失联)、网宿科技(1面通过后失联)、美团点评(内推后失联)、京东(笔试后失联)

2.4 面试挂(6)腾讯WXG(1面挂)、深信服(2面挂)、趋势科技(1面挂)Shopee(1面挂)360(2面挂)、贝壳找房(1面挂)

2.5 笔试/测评挂(7)网龙、中兴、B站、东方财富、携程、富途、快手

2.6 简历挂(8)虎牙直播、ZoomThoughtWorks、追一科技、作业帮、昆仑万维、瓜子二手车、厦航。

3 帮助最大的材料

牛客精华贴1https://www.nowcoder.com/discuss/147538

CyC大佬的github链接:https://github.com/CyC2018/CS-Notes

牛客精华贴2https://www.nowcoder.com/discuss/57978

刷题平台:LeetCode、牛客上的剑指offerLeetCode上讨论区里面的Most Voted方案很有参考价值。

记笔记工具:幕布,一款能够自动将列表转化为思维导图的应用,跟百度三面面试官聊到了这个,感觉是个加分项。

简历制作工具:wondercv

4 关于书籍

4.1 看过的书:剑指offer、现代操作系统、CSAPP2和第3部分、计算机网络自顶向下方法、C++ PrimerEffective C++、侯捷老师的STL源码剖析。

4.2 没看但觉得很重要的书:深度探索C++对象模型、apueunplinux内核相关、redis设计与实现、Head First设计模式、TCP/IP详解。

5 关于心态

心态最炸的是8月份,面完360后极度怀疑自己,在床上躺了一天。楼主调节心态的方式是面试之前暗示自己,只要把会的知识点讲清楚就行,不会的通过复盘查缺补漏,尽人事听天命,尽力就不后悔。所以楼主一路走来感觉很踏实,会的都努力讲好,不会的也会尝试在面试官的引导下解答,基本都能正常发挥。楼主这边推荐一个网易公开课上的“积极心理学”课程,这门课程给楼主带来了很多正能量。

6 高频面试题

楼主根据自己的面经,整理了一份按频次排序的面经合集,括号里面为被问到的次数,基数为27场。原料取自:https://www.nowcoder.com/discuss/334298

6.1 C++

1、STL容器(vector, list, set, map),一般问vectorlist区别,vector扩容,setmap底层红黑树这些?(8)

2、C++内存管理?mallocnew的区别?野指针?内存泄漏?(6

3、智能指针(shared_ptrweak_ptrunique_ptr)?手撕shared_ptr?(5

4、C++多态?虚函数如何实现?(3)

5、staticexternconstvolatile关键字?(3)

6、构造函数可以是虚函数吗?析构函数可以是继续函数吗?为什么析构函数要定义为虚函数?(2)

7、声明和定义的区别?(1)

8、指针函数和函数指针?(1)

9strcpy的问题?(1)

10、指针常量?常量指针?(1)

11、深拷贝与浅拷贝?(1)

12、右值引用?(1)

13、脚本语言懂吗?(1)

14、类对象的大小?内存对齐?成员函数是否占空间?·(1)

15C/C++python的本质区别?(1)

16C++异常机制?(1)

17pythonGC机制?(1)

18structclass的区别?(1)

19、面向对象与面向过程的区别?(1)

20C++重载与重写?(1)

6.2 操作系统:

1、进程与线程的区别?线程池?什么时候用进程?什么时候用线程?(9)

2、进程之间的通信方式?(6)

3、了解协程吗?(4)

4、linux基本命令?psgreptop等?强行杀一个进程怎么杀?glibc是干什么的?(4)

5、进程调度算法?抢占式非抢占式?(3)

6、虚拟内存机制?mmu(3)

7、什么叫死锁?死锁必要条件?避免、预防、恢复、检测?(2

8、selectpollepoll(2)

9、静态链接与动态链接?(2

10、手撕LRU页面置换算法?(2)

11、怎么保证线程安全?(2

12、线程之间的同步方式? (1)

13、同步、异步、阻塞、非阻塞?(1)

14、操作系统拿来干什么的?(1)

15、进程切换?(1)

16、进程的内存空间分布?堆与栈的区别?为什么用堆这种数据结构?(1)

17、操作系统的用户态与内核态?(1)

18linux常见信号?kill -9?进程组?Group IDPPID什么区别?(1)

6.3 计算机网络:

1、TCP/IP三次握手(为什么三次)、四次挥手(为什么四次)、滑动窗口、流量控制、拥塞控制?(10)

2、socket编程了解哪些?(9)

3、http状态码?(3)

4、http报文结构?getpost的区别?postput的区别?还有哪些请求头?post可以在url里面携带参数吗?(3)

5、TCPUDP的区别?(3)

6、计算机网络7/5层结构?各层常见协议?(2)

7、httphttps的区别?http的加密方式?(2)

8、消息队列有用过吗?(1)

9、介于TCPUDP之间的一些协议?(1)

10、两台机子互ping的过程?(1)

11TCP的粘包问题怎么解决?(1)

12、网络库有用过什么?(1)

13IP层如何找MAC地址?如果对应IP不在局域网呢? (1)

14、网桥?虚拟设备对?(1)

15ARP攻击,ARP欺骗?(1)

16UDP数据报文多大?(1)

6.4 数据库:

1、B树与B+树?(4)

2、乐观锁&悲观锁?如何实现?(3

3、联合索引?最左匹配原则?(3)

4、数据库事务?mysql事务隔离级别?(2)

5、数据库索引有哪些?(2)

6、redis了解吗?一致性哈希如何优化(虚拟结点)(2)

7、数据库引擎(innodbmysima)(2)

8、数据库优化(如何定位慢查询?如何改进?)(1)

6.5 算法与数据结构:

1、动态规划介绍?(4)

2、红黑树?(3)

3、哈希函数设计?哈希冲突的处理方法?(3)

4、常见排序算法?时间复杂度?基本原理?手撕快排?(3)

5、最短路算法介绍?如何优化?(2)

610亿行32位无符号整数,找出第7亿大的数是多少?只给300M内存?(2)

7、扫雷写一个随机埋n个雷的算法(洗牌算法原理)?  (1)

8、链表反转?(m到第n个?每隔k个?(1)

9、一个n位数,现在可以删除其中任意k位,使得剩下的数最小(前导零忽略)(1)

10、有符号大数链表加法,靠近头结点为高位?(1)

11、二叉树中序便利后继结点?(1)

12、无向图的联通块?(1)

13、手撕并查集?(1)

14、链表合并?(1)

15、有序链表删除重复结点?(1)

16、二叉树根到叶子的路径和为sum的路径?(1)

17、二叉排序树第三大结点?(1)

1820个银币,1个金币,每次拿1个到4个,金币只能最后一个拿,且金币银币不能同时拿,现在你先开始拿,问如何拿到金币?(1)

19、环形缓冲区?(1)

20、斐波那契数列求第n(递归、迭代、矩阵快速幂、公式)(1)

21、二叉搜索树的插入?(1)

22、分解质因数?(1)

23500个数组,每个数组有500个元素,从大到小排序好,找出前500个最大的数?(1)

24、旋转数组找最小值?(1)

2510亿个IP,取出频次出现最多的TOP10IP(1)

6.6 项目:

1、项目介绍?项目难点?遇到的困难?为什么这样技术选型?(13)

2、科研课题介绍?难点?创新点?科研课题的实际应用场景?(5)

3MVC三层架构?(1)

4、权限管理?用户登录验证?(1)

5、服务器宕机怎么排查错误?(1)

6.7 开放性问题:

1、设计一个红包系统?红包的分配在什么环节去分配?金额在发的环节去分配还是在抢的环节去分配?怎么随机分配?需要考虑哪些问题?(1)

2、估算一个上班区域一天的营销额?(1)

3、微信搜索附近的人怎么设计?(1)

6.8 其他问题:

1、自我介绍(开始)?有什么想问我的(结束)(18)

2、手头offer?怎么看待这些offer(地点、薪资、平台、岗位等)?意向的工作城市?(7)

3、对公司了解吗?对求职岗位了解吗?胜任岗位的优势?为什么选这个岗位?对未来职位的兴趣点?(5)

4、课外关注的技术?有没关注开源社区?是否了解当前热门技术?(5)

5、你的优点/你的缺点?(3)

6、设计模式了解吗?手撕单例?工厂模式为什么不直接用构造函数?(3)

7、加密算法?MD5加密算法?(3)

8、怎么看待算法岗和开发岗?(2)

9ACM经历?如何团队协作?(2)

10、编译原理了解吗?(2)

11、期望薪资?(2)

12、最近看的书?(2)

13、遇到的最困难的事情?(2)

14、学习某个技术需要的时间周期?(2)

15、有比较崇拜的人吗?(1)

16、特别有成就感的事情?(1)

17、职业规划?个人优势?(1)

18、正则表达式?(1)

1953个人中,任选3个人至少有两个人生日相同的概率?(1)

20、平时的学习习惯?(1)

7 遗憾的事情

1、研一入了算法的坑,中途发现自己太菜搞不动。

2、春招的时候没有去实习,没有投简历。

3、秋招计划安排不够详细,走一步算一步,导致最终没有C++项目,很多书没时间看。

8 有趣的事情

1、觉得能过的却挂掉了,觉得没有希望的却拿到offer了。秋招不要把自己吊死在一棵树上。

2、面试时长最短8分钟,最长1个多小时,基本没有HR面。

3、发现ACM+C++投游戏岗位真香。

4C++选手最后要投敌加入Java阵营了。

5、想重新对面试官小哥说,我最崇拜的人不是技术大牛,而是IU小姐姐。

9 写给未来的自己

多锻炼身体、多看书、造一些轮子、做一些有挑战性的事情。

更多模拟面试

全部评论

(15) 回帖
加载中...
话题 回帖

相关热帖

近期热帖

近期精华帖

热门推荐