树的遍历(python)
遍历以下二叉树:
1 首先创建二叉树,代码如下:
class Node:
def __init__(self, value):
self.value = value
self.left = None
self.right = None
class Tree:
def __init__(self, root):
self.root = Node(root)
构建二叉树:
tree = Tree(1)
tree.root.left = Node(2)
tree.root.left.left = Node(4)
tree.root.left.left.left = Node(8)
tree.root.left.left.right = Node(9)
tree.root.left.right = Node(5)
tree.root.left.right.left = Node(10)
tree.root.right = Node(3)
tree.root.right.left = Node(6)
tree.root.right.right = Node(7)
2 前序遍历
思想:先访问根节点,再先序遍历左子树,然后再先序遍历右子树。总的来说是根—左—右;
上图先序