python 树的递归
Python中,递归是一种常用的编程技术,可以用于解决许多问题,包括树的遍历。下面是一个基本的例子,说明如何使用递归来遍历二叉树。
首先,我们需要定义一个二叉树节点:
python复制代码:
    class TreeNode:
    def __init__(self, x):
    self.val = x
    self.left = None
    self.right = None
然后,我们可以定义一个递归函数来遍历这棵树。下面是一个基本的先序遍历(preorder)
python编程入门试题的例子:
python复制代码:
    def preorder_traversal(root):
    if root is not None:
    print(root.val) # 访问根节点
    preorder_traversal(root.left) # 递归遍历左子树
    preorder_traversal(root.right) # 递归遍历右子树
如果你想进行中序遍历(inorder)或后序遍历(postorder),只需稍微修改这个函数即可:
中序遍历:
python复制代码:
    def inorder_traversal(root):
    if root is not None:
    inorder_traversal(root.left) # 递归遍历左子树
    print(root.val) # 访问根节点
    inorder_traversal(root.right) # 递归遍历右子树
后序遍历:
python复制代码:
    def postorder_traversal(root):
    if root is not None:
    postorder_traversal(root.left) # 递归遍历左子树
    postorder_traversal(root.right) # 递归遍历右子树
    print(root.val) # 访问根节点
请注意,上述代码中的 print 函数只是为了演示目的。在实际应用中,你可能需要将这些值存储在列表中,或者进行其他操作。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。