Java面经复习(一)

问:二叉搜索树应用场景?
答:需要频繁插入删除的情况;数据有序排列;

问:红黑树的性质和操作?
答:性质有1.根黑;2.结点为红或黑;3.叶结点均黑;4.一个节点红,则其子均黑。5.对任意结点,其到叶结点树尾端NIL指针的每条路径都包含相同数目的黑结点。
操作有:1.左旋;2.右旋;3.变色 (Treemap和TreeSet中都有用到。)

问:B树和B+树的区别?
答:B树中分支节点信息和叶子结点信息不重复,不支持顺序检索;B+树中分支结点和叶子结点是存在重复出现的,而且B+树支持顺序检索。

问:死锁是什么造成的?
答:死锁是指多个线程因竞争资源而造成的一种互相等待。

问:死锁的几个条件:
答:1、资源互斥;2、请求并保持;3、不剥夺条件;4、循环等待。(死锁恢复的方法:资源剥夺法,进程回退法,进程撤销法。)

面经来源:
携程校招后台开发笔试面经