以下是一个简单的 Python 递归遍历二叉树的示例:

class Node:
    def __init__(self, val=None):
        self.val = val
        self.left = None
        self.right = None

    def __str__(self):
        return str(self.val)

# 前序遍历
def preorder_traversal(root):
    if root:
        print(root.val, end=' ')
        preorder_traversal(root.left)
        preorder_traversal(root.right)

# 中序遍历
def inorder_traversal(root):
    if root:
        inorder_traversal(root.left)
        print(root.val, end=' ')
        inorder_traversal(root.right)

# 后序遍历
def postorder_traversal(root):
    if root:
        postorder_traversal(root.left)
        postorder_traversal(root.right)
        print(root.val, end=' ')

# 示例
root = Node(1)
root.left = Node(2)
root.right = Node(3)
root.left.left = Node(4)
root.left.right = Node(5)

preorder_traversal(root)  # 1 2 4 5 3
inorder_traversal(root)   # 4 2 5 1 3
postorder_traversal(root) # 4 5 2 3 1

这里定义了一个 Node 类来表示树的节点,分别实现了前序遍历、中序遍历和后序遍历三种遍历方式。在遍历函数中,首先判断当前节点是否存在,如果存在则先访问当前节点,然后递归遍历左子树和右子树。最后,我们可以创建一个根节点并添加一些子节点,然后使用这些遍历函数来遍历这棵树。

Python 递归遍历二叉树示例及三种遍历方式

原文地址: https://www.cveoy.top/t/topic/mSy4 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录