0724小米一面(75min)算法题:两数之和先两层for,然后叫优化成一层for(空间换时间)1、介绍一下项目1,延迟任务怎么做的2、zset底层原理 为什么用跳表 最差情况下查询复杂度 和其他二叉树、红黑树区别3、异步任务是怎么做的4、IOC5、介绍CAS6、怎么用的多线程? 什么场景考虑用线程池7、熟悉的垃圾回收器8、说一下Redission 面试官说底层都是setnx9、Redis是单线程的? 多线程体现在哪里10、synchronized可用在哪里? 场景:在一个类中的读写锁方法加上synchronized,11、Mysql 索引,你项目中哪些表用了什么索引? 索引失效的场景? 大于小于为什么能造成索引失效12、Mysql ACID Mysql的几个隔离级别 可重复读和读已提交相比?可重复读主要解决了隔离性13、MVCC了解吗14、聊一下网络 TCP和UCP区别15、UDP优点 (快)16、TCP建立连接17、TCP断开连接 为什么需要等待2MSL18、进行服务发现和负载均衡, 负载均衡算法是什么 是定制的?还是用的轮询0731二面(35min)无八股介绍项目算法:全排列反问