数据结构考研笔记(二十) ——深度优先搜索
深度优先搜索类似于树的先序遍历 |
·首先访问起始顶点v;·接着由v出发访问v的任意一个邻接且未被访问的邻接顶点w,;·然后再访问与w,邻接且未被访问的任意顶点yi;·若w,没有邻接且未被访问的顶点时,退回到它的上一层顶点v;·重复上述过程,直到所有顶点被访问为止。
bool visited[MAX_TREE_SIZE];
void DFSTraverse(Graph G){for(int i=0 ;i<G.vexnum;++i)visited[i]=FALSE;for(int i=0;i<G.vexnum;++i)if( !visited[i])DES(G, i);
}
void DFS(Graph G,int v) {visit(v);visited[v]=TRUE;for(w=FirstNeighbor(G,v); W>=0; w=NextNeighbor(G,v,w))if(!visited[w])DES(G, w);
}
深度优先生成树 |
在深度遍历过程中,我们可以得到一棵遍历树,称为深度优先生成树(生成森林)。 |
邻接矩阵法的深度优先生成树唯一,邻接表法的不唯一 |
遍历与连通性问题 |
在无向图当中,在任意结点出发进行一次遍历(调用一次BFS或DFS),若能访问全部结点,说明该无向图是连通的。 |
在无向图中,调用遍历函数(BFS或DFS)的次数为连通分量的个数。 |
![](/assets/blank.gif)
【关注微信公众号一起来交流】 |
![](/assets/blank.gif)
·
数据结构考研笔记(二十) ——深度优先搜索相关推荐
- 数据结构考研笔记(十八) ——图的基本操作
本章将介绍数据结构常用的几个图的操作 每个操作的函数都附图说明. 项目 Value Adjacent(G,x,y) 判断图G是否存在边<x, y>或(x,y) Neighbors(G,x) ...
- 数据结构考研笔记(十五)——图的存储结构邻接矩阵、邻接表、十字链表、临界多重表的概念
图的存储结构 1.邻接矩阵 1.1有向图 1.2无向图 2.邻接表法 2.1有向图边表 2.2无向图边表 3.十字链表 4.临界多重表 十字链表与临界多重表 1.邻接矩阵 邻接矩阵法结点数为n的图G ...
- Mr.J-- jQuery学习笔记(二十八)--DOM操作方法(添加方法总结)
Table of Contents appendTo appendTo(source, target) 源代码 append prependTo prependTo源码 prepend ...
- 嵌入式系统设计师学习笔记二十八:嵌入式程序设计③——高级程序设计语言
嵌入式系统设计师学习笔记二十八:嵌入式程序设计③--高级程序设计语言 解释程序和编译程序 编译器的工作阶段示意图 语法错误:非法字符,关键字或标识符拼写错误 语法错误:语法结构出错,if--endif ...
- 数据结构自学笔记二、栈
数据结构自学笔记二.栈 栈的定义 栈的作用 栈的顺序存储与随机存储 栈的基本功能的实现 先以顺序存储结构的栈为例. 然后再说说随机存储结构的栈吧 两栈共享空间 栈的一个重要应用--四则运算 算式的后缀 ...
- python rot13解密_codewars(python)练习笔记二十:ROT13解密
codewars(python)练习笔记二十:ROT13解密 题目 How can you tell an extrovert from an introvert at NSA? Va gur ryr ...
- 嵌入式Linux驱动笔记(二十四)------framebuffer之使用spi-tft屏幕(上)
你好!这里是风筝的博客, 欢迎和我一起交流. 最近入手了一块spi接口的tft彩屏,想着在我的h3板子上使用framebuffer驱动起来. 我们知道: Linux抽象出FrameBuffer这个设备 ...
- uniapp 学习笔记二十二 购物车页面结构搭建
uniapp 学习笔记二十二 购物车页面结构搭建 cart.vue <template><view><view class="flex padding" ...
- Polyworks脚本开发学习笔记(二十)-补充几个常见操作指令的使用
Polyworks脚本开发学习笔记(二十)-补充几个常见操作指令的使用 大概要写到结尾了,最后几篇就将手册的各常用命令再看一遍,组合一下,并列举出常见的一些有用的操作. DATA_COLOR_MAP数 ...
最新文章
- 【论文解读】EfficientNet强在哪里
- 【C++】Visual Studio教程(三) - 项目和解决方案
- 棋牌游戏服务器架构: 详细设计(二) 应用层设计
- 工业交换机厂家,工业交换机品牌前十大排名
- Educational Codeforces Round 104 (Rated for Div. 2)A~E解题报告
- C++的hashmap和Java的hashmap
- 2010中小网站运营报告:社区论坛网站后来居上
- 支持统一码 10 的花园明朝字库终于更新出来了
- 关于iOS 阴历阳历转化的那些事儿
- sqlite查询空日期类型_sqlite数据类型(时间 日期 ) timestamp 使用
- 138529-46-1,Biotin-PEG2-amine可在EDC或HATU存在下与NHS酯或羧酸反应试剂
- C#Assembly详解
- Beosin(成都链安)预警:黑客攻击EOS竞猜类游戏 已获利数百EOS
- 运筹学——运输问题数学模型
- Android10.0(Q) 默认应用设置(电话、短信、浏览器、主屏幕应用)
- 2004全国城市GDP排名(前40名)
- BAT等互联网公司的薪酬结构
- 数据分析--对“数据分析”相关岗位的综合分析
- 多重影分身(c++题解)
- 析构函数和this指针