二叉树中序遍历算法
二叉树的中序遍历是一种遍历二叉树的方法,其顺序为左子树-> 根节点-> 右子树。以下是使用Python实现二叉树中序遍历的算法:
首先,我们需要定义一个二叉树节点类:
python复制代码
class TreeNode:
def__init__(self, x):
self.val = x
self.left = None
self.right = None
然后,我们可以使用递归方法来实现中序遍历:
python复制代码
def inorder_traversal(root):完全二叉树算法
res = []
if root:
res = inorder_traversal(root.left)
res.append(root.val)
res = res + inorder_traversal(root.right)
return res
这个函数首先检查根节点是否存在。如果存在,它首先递归地遍历左子树,然后访问根节点,最后递归地遍历右子树。这个过程会返回一个包含中序遍历结果的列表。
以下是如何使用这个函数:
python复制代码
# 创建一个简单的二叉树
# 1
# / \
# 2 3
# / \ \
# 4 5 6
root = TreeNode(1)
root.left = TreeNode(2)
root.right = TreeNode(3)
root.left.left = TreeNode(4)
root.left.right = TreeNode(5)
root.right.right = TreeNode(6)
print(inorder_traversal(root)) # 输出: [4, 2, 5, 1, 3, 6]
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论