C++后台开发(面经)

Linux
Linux进程调度算法
Linux进程地址空间分布
Linux内存管理方法,页面置换算法,逻辑地址和物理地址的转换
在一台内存为2G的机器上,malloc(20G)会怎么样?new 20G呢?
进程和线程的区别,进程间通信方式
解释孤儿进程,僵死进程,惊群效应
IO模型,Select、Epoll和Poll的区别
ET和LT的区别,需要注意什么

计算机网络
TCP三次握手四次挥手状态图,对应的POSIX API,为什么要三次握手,两次可以吗?
TIME_WAIT的作用
TCP和UDP区别,TCP如何保证可靠性,对方是否存活(心跳检测)
流量控制,拥塞控制
SYN Flood***
HTTP状态码
Libevent如何处理IO事件,信号事件,和定时事件

数据结构
布隆过滤器
智能指针
hash表解决冲突的方法
红黑树性质
redis中的数据结构
跳表插入删除过程

编程题:
判断大小端,int的大端转小端
去掉字符串开头和末尾的空格
大数相加
最长公共子序列LCS
最小编辑距离
二叉树中两个节点的最近公共父节点
数据流的中位数

其他
虚函数的实现原理,子类构造析构函数的调用顺序
STL中Vector、List和Map底层实现原理
inline的作用
struct和union的区别,字节对齐
C++11新特性
B树和B+树的区别,ACID, 索引种类,explain关键字
智力题 楼层丢鸡蛋

猜你喜欢

转载自blog.51cto.com/14600160/2473757