二叉搜索树(Binary Search Tree)
二叉搜索树是二叉树的一种。
满足条件:
- 二叉搜索树的每个节点的值:
- 大于其左子树的所有节点的值
- 小于其右子树的所有节点的值
- 每一颗子树也是二叉搜索树
- 存储的元素必须有可比较性
Python3 实现简单二叉搜索树
- 1.先建立一个可以创立节点(node)的类(每一个节点都有左节点left,右节点right)
class Node():
def __init__(self,e):
self.e = e
self.left = None
self.right = None
- 2.创建二叉搜索树的类(每一个二叉树都有一个最上的根节点root)
class BST():
# 构造函数,初始化时根节点为空,元素个数为零
def __init__(self):
self.__root = None
self.__size = 0
- 3.定义两个最简单的方法(查询元素个数;二叉搜索树是否为空)</