第12周项目4(1)是否有简单路径
2015-12-14 16:57
239 查看
函数:
实现:
#include <stdio.h> #include <malloc.h> #include "graph.h" int visited[MAXV]; //定义存放节点的访问标志的全局数组 void ExistPath(ALGraph *G,int u,int v, bool &has) { int w; ArcNode *p; visited[u]=1; if(u==v) { has=true; return; } p=G->adjlist[u].firstarc; while (p!=NULL) { w=p->adjvex; if (visited[w]==0) ExistPath(G,w,v,has); p=p->nextarc; } } void HasPath(ALGraph *G,int u,int v) { int i; bool flag = false; for (i=0; i<G->n; i++) visited[i]=0; //访问标志数组初始化 ExistPath(G,u,v,flag); printf(" 从 %d 到 %d ", u, v); if(flag) printf("有简单路径\n"); else printf("无简单路径\n"); } int main() { ALGraph *G; int A[5][5]= { {0,0,0,0,0}, {0,0,1,0,0}, {0,0,0,1,1}, {0,0,0,0,0}, {1,0,0,1,0}, }; //请画出对应的有向图 ArrayToList(A[0], 5, G); HasPath(G, 1, 0); HasPath(G, 4, 1); return 0; }
实现:
相关文章推荐
- 第十六周——【项目1 - 验证算法】
- 第七周 项目三 负数把正数赶出队列
- 常用OJ名字+地址
- leetcode -- 各种类型题目分类
- Eclipse解决启动慢
- eclipse java.lang.OutOfMemoryError: Java heap space 解决方案
- JSON中使用JArray.Parse
- percona xtradb clusterl配置+使用(不定时更新)
- LeetCode198——house robber(不懂dp)
- BZOJ2160: 拉拉队排练
- 模式识别之腾讯云服务器---腾讯服务器机器学习接口
- 4.iOS多线程中,GCD技术的队列与执行方式的组合结果
- 第十四周-平衡二叉树
- 第十四周 分块查找
- 努力吧!
- android 同一个ImageView显示不同的图片--->level-list
- 16周-项目(一)-快速排序
- leetcode -- Generate Parentheses -- DFS题目重点
- 91,内存管理(三)
- Spring中AOP的使用