小米一面渣面经
Java
垃圾收集器介绍
线程之间协作方式
自旋锁
死锁的成因和解决死锁的方法(原问题问的是进程解决死锁方法,我使用jstack工具使用流程进行对比介绍了)
Linux 相关
1 僵尸进程
但是如果该进程的父进程已经先结束了,那么该进程就不会变成僵尸进程
原因:
因为每个进程结束的时候,系统都会扫描当前系统中所运行的所有进程, 看有没有哪个进程是刚刚结束的这个进程的子进程,如果是的话,就由Init (pid = 1)来接管他,成为他的父进程
2 日志或者字符文件处理命令(不会。。)
3 从IO复用聊到 select、poll/epoll (让下去再看一哈select 细节)
说了一哈Java中实现IO复用是使用Selector,原理是通过监听感兴趣事件来进行单线程处理多个IO请求
2 希尔排序
希尔排序(Shell's Sort)是插入排序的一种又称“缩小增量排序”(Diminishing Increment Sort),是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法
增量递减!!
排序大致过程
比如有10个元素,先会划分为五组,然后再划分为2组,最后分成一组,直到划分为一组时,即增量为1时排序完成
计算机网络
DNS 解析
描述前得跟面试官说清楚,先说总体流程,然后再说细节——如,建立连接过程,HTTP请求过程(我都忘记说了)
滑动窗口还可以进行流量控制,没有说
拥塞控制几个阶段——慢开始->加性增->可能执行快重传->快恢复->加性增 加性增忘记这个词了,还好面试官问这阶段作用