二叉搜索树python
时间: 2023-11-07 16:05:28 浏览: 96
二叉搜索树是一种具有特定性质的二叉树,它的左子树上所有节点的值都小于或等于根节点的值,右子树上所有节点的值都大于或等于根节点的值。在Python中,可以使用以下代码插入一个节点到二叉搜索树中:
```
def insert(self, root, val):
if root is None:
return TreeNode(val)
if val < root.val:
root.left = self.insert(root.left, val)
elif val > root.val:
root.right = self.insert(root.right, val)
return root
```
而查询操作可以使用以下代码实现:
```
def query(self, root, val):
if root is None:
return False
if root.val == val:
return True
elif val < root.val:
return self.query(root.left, val)
elif val > root.val:
return self.query(root.right, val)
```
要打印二叉搜索树中的所有节点,可以使用中序遍历的方式进行打印,代码如下:
```
def printTree(self, root):
if root is None:
return
self.printTree(root.left)
print(root.val, end=' ')
self.printTree(root.right)
```
阅读全文