二叉查找树
二叉排序树(Binary Sort Tree),又称二叉查找树(Binary Search Tree),亦称二叉搜索树。
是数据结构中的一类。在一般情况下,查询效率比链表结构要高。
由链表演变而来, 而二叉查找树则在树中加入了二分查找法的思想。
链表就是特殊化的树, 树就是特殊化的图
定义
一棵空树,或者是具有下列性质的二叉树:
- 若左子树不空,则左子树上所有结点的值均小于它的根结点的值;
- 若右子树不空,则右子树上所有结点的值均大于它的根结点的值;
- 左、右子树也分别为二叉排序树;
- 没有键值相等的结点。
二查查找树如图:
遍历查找
二叉树的遍历方式有:前序遍历(根左右)、中序遍历(左根右)、后序遍历(左右根)。
而又因二叉查找树内节点的值二分的特性,在二叉查找树进行中序遍历时、便可得到顺序升序的一组值
上图经过中序遍历后得到的值为:1 3 4 6 7 8 10 13 14