首页 > 编程知识 正文

对该图进行深度优先遍历(深度优先遍历顶点序列例子)

时间:2023-05-05 09:20:04 阅读:406 作者:3085

深度优先搜索遍历图

00-1010关于图论算法

00-1010深度优先搜索(DFS)返回到最近的分叉处,并在每次无法沿着路径前进时继续向下遍历。换句话说,每一次路径不可达,就代表一条完整路径的形成。

00-1010连通分量:在无向图中,如果两个顶点可以互相到达(通过某条路径间接到达),那么这两个顶点是连通的;如果图G中的任意两个顶点是连通的,那么图G称为连通图;否则称为非连通图,其中最大连通子图称为连通分量。

强连通分支:在有向图中,如果两个顶点可以通过有向路径到达另一个顶点,则称它们是强连通的;如果图G的任意两个顶点可以强连通,那么图G称为强连通图;否则称为非强连通图,极强连通子图称为强连通分量。

我们知道,如果我们遍历整个图,我们需要遍历所有的连通块(连通分量和强连通分量)。基本思想是将遍历的顶点设置为遍历期间遍历的顶点。

相关文章

基于上图的构造,我们主要实现DFS核心代码。

//DFS顶点

无效DFS(int v){ 0

//邻接表

Cout '到达顶点' vendl

访问[v]=1;

//所有可到达的点

for(int I=0;iadj[v]。size();I){ 0

int temp=adj[v][i]。五;

if(请访问[temp]==0){ 0

外勤部(临时);

}

}

}

//DFS图

void DFSTrave(Vectornode g[MaxV]){

for(int I=0;imaxVI){ 0

if(!g[i]。清空()访问[I]===0)

外勤部(一);

}

}

}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。