二叉树的基本操作相关的演示程序
时间: 2024-01-23 17:13:42 浏览: 36
以下是一个二叉树的基本操作相关的演示程序,包括创建二叉树、遍历二叉树、查找二叉树中的节点等操作:
```python
# 定义二叉树节点类
class TreeNode:
def __init__(self, val):
self.val = val
self.left = None
self.right = None
# 创建二叉树
def create_tree():
root = TreeNode(1)
root.left = TreeNode(2)
root.right = TreeNode(3)
root.left.left = TreeNode(4)
root.left.right = TreeNode(5)
return root
# 前序遍历二叉树
def preorder_traversal(root):
if not root:
return
print(root.val)
preorder_traversal(root.left)
preorder_traversal(root.right)
# 中序遍历二叉树
def inorder_traversal(root):
if not root:
return
inorder_traversal(root.left)
print(root.val)
inorder_traversal(root.right)
# 后序遍历二叉树
def postorder_traversal(root):
if not root:
return
postorder_traversal(root.left)
postorder_traversal(root.right)
print(root.val)
# 查找二叉树中的节点
def search_node(root, val):
if not root:
return None
if root.val == val:
return root
left = search_node(root.left, val)
if left:
return left
right = search_node(root.right, val)
if right:
return right
# 创建二叉树
root = create_tree()
# 遍历二叉树
print("前序遍历:")
preorder_traversal(root)
print("中序遍历:")
inorder_traversal(root)
print("后序遍历:")
postorder_traversal(root)
# 查找二叉树中的节点
node = search_node(root, 3)
if node:
print("查找到的节点值为:", node.val)
else:
print("未找到该节点")
```
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)