腾讯后台开发实习一二面面经
不知道这是第几场面试了,中间心态崩了,太多面试了就懒得记录了
5.6一面(57min)
无自我介绍
1. 算法题1:找元素第一个出现的位置(有序数组,里面一堆数,有重复,找某个元素第一次出现的位置)
2. 算法题2:IPv4点分10进制地址转化成无符号整数
3. 介绍项目
4. 除了互斥锁你还知道什么锁?分别应用于什么场景?
5. 信号量
6. 程序的内存布局
7. 初始化和未初始化的静态变量分别放在哪?放在一起么?
8. 虚函数实现原理
9. B树和B+树
10. TCP和UDP
11. UDP怎么实现可靠传输
12. QUIC丢包怎么办
13. C++第三方库用过么(我说stl,他说stl也算第三方库么哈哈哈)
14. 用过什么测试方法,比如黑盒测试之类的
15. 排序算法
16. 一个5层的堆,多少元素
17. 未来规划
第二天通知二面
5.9二面(80min)
自我介绍
1. 对面向对象的理解
2. 普通的函数和成员函数的区别
3. 它们实现原理上的区别
4. 编译器对它们进行处理的时候,是一样的么?
5. 你知道this指针么
6. 那this指针是存在哪里的
7. static关键字的作用
8. 哪几种情况会使用static
9. 静态局部变量怎么初始化呢
10. 静态函数
11. #ifndf,#endif,#ifdef
12. const char*,char const*,char* const
13. char* p = new char[10], sizeof(p)是多少
14. stl库,vector
15. Vector扩容,什么情况1.5倍,什么情况2倍
16. Vector的resize和reserve
17. resize的参数比原来小的话,会怎样
18. resize和reserve哪个会构造
19. Map,set,unordered_map,unordered_set,红黑树
20. 用hash_map的话为什么能达到o(1)呢,怎么做到的呢
21. 哈希碰撞怎么办
22. 你刚刚提到公共溢出区,那这个公共溢出区是干什么呢
23. Map[]和insert的区别
24. TCP四次挥手
25. 滑动窗口
26. 怎么理解TCP的流的概念
27. TCP粘包,怎么解决
28. 排序算法
29. 快速排序
30. 一个100万行的文件,找前100个最长的
31. 算法题:一个数组,连续的就输出首尾,否则输出原数(没做出来)
e.g.输入[1,2,3,4,3,2,1,7,0,2,3,4], 输出1,4,3,1,7,0,2,4
32. 进程通信方式
33. 共享内存怎么实现
34. 锁
35. 信号量
36. Linux命令查看进程用到的信号量
37. Linux查看特定条件的内容
没有反问
三天后凉了
#腾讯暑期实习##实习##面经#