数据结构中二叉树的建立和遍历的实验代码
时间: 2024-11-27 13:19:20 浏览: 30
在数据结构中,二叉树是一种常见的树形数据结构,其中每个节点最多有两个子节点,通常称为左孩子和右孩子。建立二叉树的实验代码通常涉及节点类的创建,以及插入、构建和遍历操作。
首先,我们定义一个简单的二叉树节点类,包括值、左子节点和右子节点:
```python
class TreeNode:
def __init__(self, val=0, left=None, right=None):
self.val = val
self.left = left
self.right = right
```
接下来,我们可以编写函数来插入新节点,例如通过递归方式进行:
```python
def insert_node(root, val):
if not root:
return TreeNode(val)
elif val < root.val:
root.left = insert_node(root.left, val)
else:
root.right = insert_node(root.right, val)
return root
```
构建完整的二叉搜索树或者随机二叉树可以通过不断插入元素并调整来完成。
遍历二叉树有几种基本方法:
1. **前序遍历**(根-左-右):
```python
def preorder_traversal(root):
if root is not None:
print(root.val)
preorder_traversal(root.left)
preorder_traversal(root.right)
```
2. **中序遍历**(左-根-右):
```python
def inorder_traversal(root):
if root is not None:
inorder_traversal(root.left)
print(root.val)
inorder_traversal(root.right)
```
3. **后序遍历**(左-右-根):
```python
def postorder_traversal(root):
if root is not None:
postorder_traversal(root.left)
postorder_traversal(root.right)
print(root.val)
```
阅读全文