二叉查找树(Binary Search Tree,BST)是一种特殊的二叉树,又称为排序二叉树、二叉搜索树、二叉排序树。二叉查找树的递归定义如下:
- 要么二叉查找树是一颗空树
- 要么二叉查找树由根结点、左子树和右子树组成。其中左子树和右子树都是二叉查找树,且左子树上所有结点的数据域均小于或等于根结点的数据域,右子树上所有结点的数据域均大于根结点上的数据域。
从二叉查找树的定义中可以知道,二叉查找树其实是一颗数据域有序的二叉树,即对树上的每个结点,都满足其左子树上的所有结点的数据域均小于或者等于根结点的数据域,右子树上的数据域均大于根结点上的数据域。