深度优先与广度优先
程序员文章站
2022-03-03 11:18:24
...
一个网站的设计过程中,url是有层次的。整个的url是一个树形结构。有深度优先和广度优先两种策略实现对节点的遍历。
首先看深度优先,用递归函数就可以实现:
def tree(tree_node):
print(tree_node)
if tree_node.left is not None:
return tree(tree_node.left)
if tree_node.right is not None:
return tree(tree_node.left)
广度优先用队列和二叉树模型实现:
def tree():
queue=[]
node=root_node
queue.append(node)
while queue:
node=queue.pop(0)
print(node.ele)
if node.Lchild:
queue.append(node.Lchild)
if node.Rchild:
queue.append(node.Rchild)
上一篇: 深度优先和广度优先