深度优先搜索的伪码描述:
void DFS( Vertex V ){
visited[ V ] = true;
for ( V的每个邻接点W ){
if( !visited[ W ] ){
DFS( W );
}
}
}
从点V进入,将点V标识为已访问,visited[ V ] = true。然后对于V的每一个邻接点,对于每一个邻接点W,递归的调用DFS。
对图的深度优先搜索算法,类似树的先序遍历。
若有N个顶点,E条边,时间复杂度是:
- 用邻接表存储图,有O(N+E)
- 用邻接矩阵存储图,有O(N^2)
本文介绍了深度优先搜索(DFS)的基本概念及其伪代码实现过程。详细讲述了如何从一个顶点开始,标记并递归地访问其所有未被访问过的邻接点。此外,还对比了使用邻接表和邻接矩阵存储图时DFS的时间复杂度。
1949

被折叠的 条评论
为什么被折叠?



