1. 网站url捷信
2.深度优先算法、广度优先算法及其实现
- P.S.
- 需进一步学习推荐中国大学慕课网浙大陈越和何钦明老师的数据结构课程
- https://www.icourse163.org/course/ZJU-93001
Scrapy默认通过深度优先算法实现
深度优先输出:A、B、D、E、I、C、F、G、H(递归实现)
广度优先输出:A、B、C、D、E、F、G、H、I(队列实现)
# 深度优先算法实现
# 递归实现
def depth tree(tree_node):
if tree_node is not None:
print(tree_node._data)
if tree_node.left is not None:
return depth_tree(tree_node._left)
if tree_node._right is not None:
return depth_tree(tree_node._right)
# 广度优先算法实现
def level_queue(root):
# 利用队列实现树的广度优先遍历
if root is None:
return
my_queue =[]
node: root
my_queue.append(node)
while my_queue:
node = my_queue.pop(0)
print(node,elem)
if node.lchild is not None:
my_queue.append(node.lchild)
if node.rchild is not None:
my_queue.append(node.rchild)