在Python中,可以通過遞歸的方式來實現樹的遍歷。下面是一個示例代碼,演示了如何實現 TreeNode 類和對其進行前序、中序和后序遍歷。
class TreeNode:
def __init__(self, value):
self.value = value
self.left = None
self.right = None
def preorder_traversal(root):
if root:
print(root.value, end=' ')
preorder_traversal(root.left)
preorder_traversal(root.right)
def inorder_traversal(root):
if root:
inorder_traversal(root.left)
print(root.value, end=' ')
inorder_traversal(root.right)
def postorder_traversal(root):
if root:
postorder_traversal(root.left)
postorder_traversal(root.right)
print(root.value, end=' ')
# 構建一個示例樹
root = TreeNode(1)
root.left = TreeNode(2)
root.right = TreeNode(3)
root.left.left = TreeNode(4)
root.left.right = TreeNode(5)
print("Preorder traversal:")
preorder_traversal(root)
print("\nInorder traversal:")
inorder_traversal(root)
print("\nPostorder traversal:")
postorder_traversal(root)
以上代碼演示了如何定義一個簡單的 TreeNode 類,以及如何進行前序、中序和后序遍歷。你可以根據自己的需要對以上代碼進行修改和擴展。