码迷,mamicode.com
首页 > 其他好文 > 详细

深度优先搜索和广度优先搜索

时间:2018-07-21 14:40:22      阅读:116      评论:0      收藏:0      [点我收藏+]

标签:一个   htm   http   style   span   col   logs   起点   循环   

广度优先搜索:

策略:

 从起点开始遍历其相邻接的节点,由此向外不断扩散 (使用队列)

BFS()
{
  输入起始点;
  初始化所有顶点标记为未遍历;
  初始化一个队列queue并将起始点放入队列;

  while(queue不为空)
  {

    从队列中删除一个顶点s并标记为已遍历; 
    将s邻接的所有还没遍历的点加入队列;
  }
}

深度优先遍历

策略是:

从一个顶点v出发,首先将v标记为已遍历的顶点,然后选择一个邻接于v的尚未遍历的顶点u,如果u不存在,本次搜素终止。如果u存在,那么从u又开始一次DFS。如此循环直到不存在这样的顶点。(使用栈)

DFS(顶点v)
{
  标记v为已遍历;
  for(对于每一个邻接v且未标记遍历的点u)
      DFS(u);
}

 具体参考 https://www.cnblogs.com/0kk470/p/7555033.html

 

深度优先搜索和广度优先搜索

标签:一个   htm   http   style   span   col   logs   起点   循环   

原文地址:https://www.cnblogs.com/maxbolg/p/9346266.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!