腾讯后台开发暑期实习
一面 4.8 20:00-22:00
面试官非常nice,不会的问题会不断引导
1. 自我介绍
2. 项目介绍,详细问了为什么数据库索引要用B+树(利于范围查找)
3. 红黑树和AVL树各自的优点与缺点
4. TCP与UDP的区别,TCP如何保证可靠性
5. TCP握手过程
6. 进程空间分几段
7. 静态编译和动态编译的优劣势
8. 数据库的事务 ACID特性
9. 数据库三大范式
10. 多线程和多进程(隔离性上的区别)
11. 进程间的通信方式
12. 宏函数和模板函数两种实现方式的差异
13. 编译分几个阶段,都做些什么
14. 对于有序链表,怎么高效查找(跳表)
15. 多态的实现机制(虚函数表)
16. 做题(40min)
(1) 进制转化函数:
(2) 写代码判断当前环境的字节序是大端还是小端
(3) 求数组中max(A[i] & A[j])
(4) 海量数据找中位数(桶排序)
每个问题都会发散一下,所以如果只是背答案的话还是不行的。
二面 4.10 21:00-22:00
二面忘记记录了
1. C++语法,比如const作用
2. 两个算法题,都比较难想(在某腾讯后台面经中出现过)
3. 代码题
(1). 实现大小写无关的C字符串比较函数
(2). 递增循环整数数组找最小
(3). 二叉树最小公共节点
HR面 4.16 11:30-11:50
1. 自我介绍
2. 介绍自己的一个项目
3. 对于项目的未来的规划和安排
4. 在项目中遇到的挑战
5. 项目过程中自己的收获
6. 对于考研的打算
7. 为什么项目经历比较少
8. 在项目中其他同学对自己的评价
9. 选择就业单位时考虑哪些因素
10. 未来的职业发展规划
11. 介绍一下家庭
12. 实习时间