二叉搜索树(BST)的定义如下:
- 任意节点的左子树中的键值都 小于 此节点的键值。
- 任意节点的右子树中的键值都 大于 此节点的键值。
- 任意节点的左子树和右子树都是二叉搜索树。
如何判断一棵树是不是二叉搜索树呢?
判断BST,要注意BST的任意一个节点的键值大于其左子树的所有节点的值,也就是大于左子树的节点的最大值;BST的任意一个节点的键值小于其右子树的所有节点的值,也就是小于右子树的节点的最小值。所以说,对于每一个节点,都要维护一个相应的最小值(Min)和最大值(Max)的信息。
记住它!
参考:
二叉搜索子树的最大键值和