美文网首页
Python 深度优先和广度优先

Python 深度优先和广度优先

作者: 马本不想再等了 | 来源:发表于2019-02-24 13:10 被阅读0次

1. 网站的url是一个树形图

主干:www.jianshu.con
主分支:www.jianshu.com/subscriptions/
子分支:www.jianshu.com/notifications
叶子:https://www.jianshu.com/notifications#/comments
......

理解深度优先与广度优先.png

2. 深度优先算法和实现

深度优先算法用递归实现

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)

3. 广度优先算法和实现

广度优先算法用队列实现

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)

相关文章

  • Python爬虫:关于 广度优先 和 深度优先

    广度优先和深度优先 关于广度优先和深度优先,首先,不管是广度还是深度,都需要定义一个爬取的深度 crawl_dee...

  • 爬虫(3-5)

    深度优先和广度优先1 网站的树结构2 深度优先算法和实现3 广度优先算法和实现 深度优先输出A,B,D,E,I,C...

  • 深度优先和广度优先查找以及拓扑排序

    深度和广度优先查找 归属:蛮力法 简称:DFS(深度优先查找)、BFS(广度优先查找) 思想:DFS: 深度优先查...

  • 5. 深度优先、广度优先

    1. 二叉树的深度优先遍历和广度优先遍历2. 深度优先搜索递归和非递归实现 深度优先(DFS):前序遍历 广度优先...

  • 2019-03-13

    python实现图:邻接表表示: 邻接矩阵表示: 深度优先,广度优先:

  • Python 深度优先和广度优先

    1. 网站的url是一个树形图 主干:www.jianshu.con主分支:www.jianshu.com/sub...

  • 搜索

    一、深度优先搜索 图深度优先遍历、深度优先搜索算法求有权图两点最短路径 二、广度优先搜索 图广度优先遍历、广度优先...

  • python分布式爬虫搜索引擎实战-2-深度优先和广度优先

    深度优先和广度优先 目录: 网站的树结构 深度优先算法和实现 广度优先算法和实现 网站url树结构:分层设计 子域...

  • 前端常见面试题目(六)

    一、介绍下深度优先遍历和广度优先遍历,如何实现 通过用深度优先遍历和广度优先遍历对这个dom树进行查找来理解1、 ...

  • js-树的遍历

    数据 广度优先遍历 深度优先遍历 深度优先不递归

网友评论

      本文标题:Python 深度优先和广度优先

      本文链接:https://www.haomeiwen.com/subject/ryivyqtx.html