先序遍历是二叉树遍历的一种方式,它按照根节点、左子树、右子树的顺序遍历二叉树的所有节点。在这篇文章中,我们将介绍如何使用递归和非递归的方式来实现二叉树的先序遍历,并提供相应的源代码。
首先,我们定义二叉树的节点类,包含节点值、左子节点和右子节点的引用:
class TreeNode:
def __init__(self, value):
self.value = value
self.left = None
self.right = None