binarytree二叉树节点DFS深度优先搜索遍历,递归,python
Posted zhangphil
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了binarytree二叉树节点DFS深度优先搜索遍历,递归,python相关的知识,希望对你有一定的参考价值。
binarytree二叉树节点DFS深度优先搜索遍历,递归,python
import random
from binarytree import build
def app():
data = []
for i in range(13):
data.append(i)
random.shuffle(data)
root = build(data)
root.pprint(index=True, delimiter=',')
paths = []
print('-----')
my_dfs_travel(root, paths)
print('深度遍历', paths)
# 深度遍历,从左至右,递归实现
def my_dfs_travel(root, paths):
if root == None:
return
paths.append(root.value)
if root.left != None:
my_dfs_travel(root.left, paths)
if root.right != None:
my_dfs_travel(root.right, paths)
if __name__ == '__main__':
app()
输出:
________________0,7_______________
/ \\
_____1,6______ ______2,5_
/ \\ / \\
__3,4_ __4,0__ __5,2_ 6,9
/ \\ / \\ / \\
7,12 8,3 9,11 10,10 11,8 12,1
-----
深度遍历 [7, 6, 4, 12, 3, 0, 11, 10, 5, 2, 8, 1, 9]
以上是关于binarytree二叉树节点DFS深度优先搜索遍历,递归,python的主要内容,如果未能解决你的问题,请参考以下文章
二叉搜索树BST节点DFS深度优先搜索遍历,基于栈,非递归,binarytree,python
binarytree二叉树节点BFS广度优先搜索遍历,递归,python