C++语言本身问题
- 代码在内存中的分布都有哪些区,宏定义哪个区域?堆栈有什么区别?malloc和new有什么区别?
- C++实现多态的机制是什么?讲一下虚函数表的原理。
- 什么是多态和重载?
- C++11的新特性。
lamda表达式、仿函数、STL容器的增加、自动类型推导、智能指针。 - C++虚函数和纯虚函数的区别?
- 子类析构会调用父类的析构函数吗?执行顺序是什么?
- sizeof空类?
- 智能指针
- 内存泄露和内存溢出的区别。
- volitile关键字。
- 类成员初始化的方式。
- const成员函数的理解和应用。
- C++内存模型。
计算机网络问题
- 描述一下三次握手和四次挥手。
- HTTP协议的过程。
- http协议get和post的区别。
- TCP的超时等待的介绍。
- 流量控制的介绍。
- 数字证书的了解。
- http和https的区别。
https://www.cnblogs.com/wqhwe/p/5407468.html
https://blog.csdn.net/xionghuixionghui/article/details/68569282 - 地址解析协议的学习过程
https://www.cnblogs.com/itsad/p/8250503.html
算法类问题
- 100万数据找Top K问题。
- 判断一个数是否是2的幂。
- 知道哪些排序算法,说一下时间复杂度,快速排序什么情况下时间复杂度最高?
- 图中的最短路径问题怎么求、迪杰斯特拉算法和弗洛伊德算法的区别有哪些?
- B树和B+树的区别有哪些以及相关的特性?
- 讲讲桶排序和堆排序。
- 迭代和递归的区别。
- 描述一下迪杰斯特拉算法的过程。
- AVL树的构建过程。
- 单链表的倒置。
- 红黑树的特性以及实现的原理。
- 快速排序的优化。
https://www.cnblogs.com/c4isr/p/4603980.html - 游戏中打怪时已经各个小怪的坐标,你放一个技能是圆形范围,快速求能打到的小怪。
- 无锁编程解决单生产者多消费者问题和多生产者多消费者问题。
- 魔兽世界10人房间,现在组队规模有3人,有5人,如何让每个人等待的时间尽可能少,即将时间线上哪些队伍组合在一起开始一个游戏(01背包问题的应用题)。
- 快速排序的稳定化算法。
https://blog.csdn.net/yudw1316/article/details/77693647
STL问题
- map和hashmap的区别,查找的时间复杂度分别是多少?
- 小堆的话,删除是怎么做的?
- 红黑树的特性以及如何旋转。
- vector和list的区别?
- 给你1MB的内存,你们怎么设计,才能使其利用率最高,产生的碎片最少?
智力题
- 36匹马6个跑道无秒表选前三,最少跑几轮?
Linux问题
- Linux下如何查看网络中服务器状态?
- Linux下TCP服务器都有什么状态?
- Linux下TIME_WAIT和CLOSE_WAIT区别是什么?
- 处理多个套接字的I/O复用介绍、epoll和select的区别?
- 创建一个TCP服务器的步骤是什么?
- linux内核中的Timer 定时器机制。
- 用户态到内核态的转化原理。
- 建立TCP服务器的各个系统调用。
操作系统
- 操作系统中的PV操作是做什么用的,能否举个例子?
- 进程和线程的区别。
- 进程和线程的通信。
- 虚拟内存的概念与介绍。
- 虚拟内存的意义与作用。
- 线程间通信。
数据库
- MySQL那两个引擎怎么利用B+树构建索引。
- 对数据库包括其引擎的区别与了解。
- 数据库索引的作用。