hello,大家好~
我是好好学习天天,天天编程的天天,一个每天都死磕技术,及时分享的技术宅~

昨天分享的题目不知道大家是否看过了,以后我计划每天都更新一些互联网公司的面试真题,后期搞一个合集。
好了,接下来进入正题啦。


腾讯2020年实习生面试题分享

一面
  1. 虚函数、C++ 内存模型、深拷贝(拷贝构造函数、拷贝赋值函数)
  2. C++98/11/14/17相关的特性、智能指针
  3. 内存泄漏问题(new/delete, malloc/free, Valgrind)
  4. 平常怎么调试(strace/gdb/core dump)
  5. 怎么检查服务器网络问题(ping/netstat/tcpdump)
  6. 浏览器输入URL过程(DNS/HTTPS/TLS/HTTP/TCP/UDP/IP/ARP)
  7. Redis源码(事件循环ae,单线程IO多路复用,Redis数据结构实现)
  8. 数据库的索引(MySQL InnoDB索引、B+树)
  9. MySQL慢查询分析(慢查询日志、explain、索引优化)
  10. 设计模式(单例的懒汉/饿汉、线程安全问题,装饰器模式,观察者模式,适配器模式、策略模式、迭代器模式)
  11. Nginx网络模型(多进程、Linux epoll、freeBSD kqueue)、负载均衡原理和策略、静态文件服务器、OpenResty(这部分都没特别深入)
  12. 数据库一致性问题(cache/DB的读写一致性,2PC)、数据库容灾(redolog/binlog、业界的解决方案)
    二面
  13. 说说体现C++的关键字有哪些?
  14. 说一说 static 与 const 区别?
  15. 讲一讲多态,虚函数?
  16. 讲讲C++容器 vetcor map set list 底层实现?
  17. 红黑树底层实现
  18. udp 与 tcp 区别特点
  19. 三次握手 与 四次握手
  20. 四次握手中如果close_wait状态太多 会怎么样?
  21. 讲讲堆排序
三面
  1. 实验室方向
  2. 进程和线程
  3. 线程上下文切换为什么比线程开销小
  4. 如果两个进程都是单线程,这时怎么进行线程切换?(面试官意思可能是不同进程之间的线程怎么切换)
  5. 进程间通信方式
  6. 线程同步
  7. 为什么进程间需要单独的通信方式,而线程不需要?
  8. 什么是死锁?
  9. 如何预防死锁?
  10. select和epoll区别(底层原理)
  11. TCP,UDP区别
  12. Nagle算法
  13. 不用Nagle与用Nagle的好处分别是什么
  14. HTTP下载一个文件时,为什么速度刚开始时很慢,慢慢的才会达到一个封顶(完全懵逼)
  15. HTTP的put和get有什么区别,在协议层面上有没有了解过(没有)
  16. TCP三次握手
  17. 什么是半连接状态
  18. TCP为什么可靠?
  19. UDP怎么样可以实现可靠传输?
  20. 用什么语言?C++,然后开始问C++相关的
  21. 虚函数如何实现?
  22. 析构函数为什么要是虚函数,构造函数可以是虚函数吗?为什么?
  23. 友元类
  24. 为什么要做内存对齐?
  25. 深拷贝,浅拷贝
  26. map,unordered_map底层,效率
  27. 哈希冲突怎么解决
  28. 二叉树中寻找两个节点的公共父节点?
  29. 二叉树深度
  30. 数组里的第2大元素(堆,冒泡思想)
  31. 单向链表的倒数第n个节点
  32. 判断链表中是否有环

以上就是记录的一次2020年腾讯C++实习生面试真题
天天希望不遗余力的给大家分享有价值的干货,希望大家也可以文章的底部点个赞咯。
点赞专用图