校招二面。简单介绍一下自己介绍一下归并排序,说一下复杂度,怎么算的。介绍一下hashmap的底层数据结构,为什么用红黑树,红黑树的复杂度是多少,为什么不用AVL树替代红黑树,为什么链表长度要到达8才转红黑树,给出具体的计算方式。有个服务,现在CPU很高,请你猜测一下可能得原因,我说了fullgc和死循环,后面想起死锁。面试官继续问,怎么确定是否有死循环,怎么查看哪个线程是死循环,怎么查看具体出现死循环的位置。给你一个T的数据,怎么进行排序?内存不能太大,但是按G算没问题。(我说了一个复杂一些的,但是也勉强可以算出来,然后面试官说不用那么复杂,用归并就可以,后面自己百度查才明白怎么个归并法)感觉自己真的是菜的抠脚,其实想想,这些东西不算是很难的题目,像是查询线程哪个出问题,然后怎么查错误的位置,可以类似查询死锁的方式一样,当时确实自己太紧张,会查死锁就会查死循环,一样的道理。还有就是像是为什么要到8才转红黑树,为什么不用AVL树,这些其实在自己学习的时候就有疑惑了,只是从来没有去挖掘过,都是在自己“认为”这个层面,虽然说思路没错,但是具体为什么就不清楚了。然后就卡的死死的,虽然讲出一点皮毛,但是这点皮毛一点根本搞定不了面试官。加油!路还很长!相信自己!...查看更多