程序员语录:
把时髦的技术挂在嘴边,还不如把过时的技术记在心里。
1 二叉查找树是什么?
二叉查找树是一种数据结构,又叫作二叉搜索树或二叉排序树,采用了图的树形结构,数据存储于二叉查找树的各个结点中,每个节点中最多有两个子结点。
2 二叉查找树 的特点
- 每个结点的值均大于其左子树上任意一个结点的值。比如上图中的结点9大于其左子树上的3和8
- 每个结点的值均小于其右子树上任意一个结点的值。比如上图中的结点15小于其右子树上的23、17和28
所以在二叉查找树的中的数据,最左边小数据,右边是大数据,在查找数据时,二叉查找树的最小结点要从顶端开始,往其左下的末端寻找;然后最大结点要从顶端开始,往其右下的末端寻找。
3 二叉查找树中添加数据
如在上图中的二叉查找树中添加数据1:
第二步
第三步
最后得到
比如添加数据4,添加分析逻辑与上述过程也是一致的:
4 二叉查找树中删除数据
如果需要删除的结点没有子结点,直接删掉该结点即可,如删除这里的结点 28:
如果需要删除的结点只有一个子结点,那么先删掉目标结点,然后把子结点移到被删除结点的位置上即可,如删除这里的结点8:
如果需要删除的结点中有两个子结点,那么先删掉目标结点,然后在被删除结点的左子树中寻找最大结点,最后将最大结点移到被删除结点的位置上。
完毕