深度优先遍历
前序:DBACFEG
def preorder(x):
if x is None:
return
print(x.label)
print(x.left)
print(x.right)
中序:ABCDEFG
def inorder(x):
if x is None:
return
inorder(x.left)
print(x.label)
inorder(x.right)
后序:ACBEDFG
def postorder(x):
if x is None:
return
postorder(x.left)
postorder(x.right)
print(x.label)
![在这里插入图片描述](https://img-blog.csdnimg.cn/cdaa7072d7f04a2ea4a2052ff8a5b135.png
二叉树层序遍历
def levelorder(x):
for i in range(h,height):
visit_level(x,i)
def visit_level(x,i):
if x is None:
return
if i == 0:
print(x.label)
else:
visit_level(x.left,i-1)
visit_level(x.right,i-1)
多维数据处理