遍历并打印二叉搜索树
时间: 2023-06-21 07:19:25 浏览: 97
数据结构 二叉树遍历和搜索
遍历二叉搜索树可以分为三种方式:前序遍历、中序遍历和后序遍历。以下是三种遍历方式的示例代码:
```python
class Node:
def __init__(self, val=None, left=None, right=None):
self.val = val
self.left = left
self.right = right
def preorder_traversal(node):
if not node:
return
print(node.val)
preorder_traversal(node.left)
preorder_traversal(node.right)
def inorder_traversal(node):
if not node:
return
inorder_traversal(node.left)
print(node.val)
inorder_traversal(node.right)
def postorder_traversal(node):
if not node:
return
postorder_traversal(node.left)
postorder_traversal(node.right)
print(node.val)
```
在这里,我们首先定义了一个 Node 类来表示二叉搜索树中的节点。然后,我们定义了三个遍历函数:preorder_traversal、inorder_traversal 和 postorder_traversal。它们分别代表前序遍历、中序遍历和后序遍历。在每个函数中,我们首先判断当前节点是否为空,如果不为空,则分别遍历左子树和右子树,并打印当前节点的值。注意,三种遍历方式的打印顺序不同,因此输出结果也不同。
阅读全文