本文主要是介绍【数据结构】-图-判断图中是否存在vi到vj的路径,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
方法一:深度优先,不断向前走,采用递归形式比较简单,下图是递归的例子
编程注意事项:
1.递归出口:i==j
2.判断i到j是否存在路径,把问题化解到最简单的情况,一步一步向前走,能向前迈步的条件是:1.前面的路径连通,2.有下一个邻接节点,3.下一个邻接节点没被访问过。
方法二:广度优先,从节点i开始进行广度优先搜索
bool exit_path_DFS(ALGraph G, int i, int j) { if (i == j)return true;else {visited[i] = true;for (ArcNode* p = G.vertices[i].first; p; p = p->next) {
这篇关于【数据结构】-图-判断图中是否存在vi到vj的路径的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!