日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

判断一个图中有无环路的存在

發布時間:2023/11/30 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 判断一个图中有无环路的存在 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這里要引入兩個概念:

1.樹邊:是一條未被遍歷過的邊,它指向一個未被訪問過的點。

2.反向邊:是一條未被遍歷過的邊,它指向一個被訪問過的點。

如果圖中有環路的存在,那么環路的最后一個邊必然是一條反向邊。

?

那么,我們在DFS遍歷的過程當中,只需要添加一條語句來判斷所有未被檢查過的邊的指向點是否已被訪問過,就可以判斷出這個圖是否存在環路了。

?

#include <stdio.h> #include <string.h>const int maxv = 1000; const int maxe = 5000; const int maxn = 1000; /* * 鄰接矩陣 * */ struct adjMetrix {int G[maxn+10][maxn+10];int visit[maxn];int n;void addedge(int u, int v) {G[u][v] = 1;return ;}void read() {memset(G, 0, sizeof(G));memset(visit, 0, sizeof(visit));int u, v, w;scanf("%d", &n);for (int i=0; i<n; i++) {scanf("%d %d", &u, &v);addedge(u, v);}return ;}void dfs(int i) {for (int j=0; j<=n; j++) {if (G[i][j]!=0 && visit[j]==0) {printf("%d %d\n", i, j);visit[j] = 1;dfs(j);}}} };/* * 鄰接鏈表 * */ struct Edge {int to, w, next; };struct adjTable {int node[maxv];int visit[maxe];int cnt;bool cycle;struct Edge e[maxe];void init() {memset(node, -1, sizeof(node));memset(visit, 0, sizeof(visit));cnt = 0;cycle = false;}void addedge(int u,int v) {e[cnt].to = v;e[cnt].next = node[u];node[u] = cnt++;}void read() {int n, u, v, w;scanf("%d", &n);for (int i=1; i<=n; i++) {scanf("%d %d", &u, &v);addedge(u, v);}return ;}void dfs(int p) {int i;for (i=node[p]; i!=-1; i=e[i].next) {if ( visit[e[i].to] )cycle = true;if (visit[ e[i].to ] == 0) {printf("%d %d\n", p, e[i].to);visit[ p ] = 1;dfs( e[i].to );}}} };struct adjTable table;int main() {freopen("in.txt", "r", stdin);table.init();table.read();table.dfs(1);if (table.cycle)printf("有環!\n");elseprintf("無環!\n");return 0; }

?

  

?

轉載于:https://www.cnblogs.com/marginalman/p/4742704.html

總結

以上是生活随笔為你收集整理的判断一个图中有无环路的存在的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产精品av免费观看 | 四虎在线观看 | 婷婷伊人久久 | 国产在线18 | 久热这里只有精品在线 | 午夜影院一区 | 国产欧美久久久精品免费 | 一区二区三区在线观看免费视频 | 午夜影院在线观看免费 | 黄色片子免费看 | 欧美三级特黄 | 锕锕锕锕锕锕锕锕 | 亚洲在线精品视频 | 亚洲欧美另类在线视频 | 亚洲人xxx| 亚洲天天操 | 亚洲男人第一网站 | 国产精品久久久国产盗摄 | 中文字幕av一区二区 | 久久一区欧美 | 午夜精品久久久久久久久久久久 | 强伦人妻一区二区三区视频18 | 精品国产成人av在线免 | 色网站在线观看 | 最新最近中文字幕 | 四虎影院在线观看免费 | 三级性生活视频 | 亚洲一区二区福利 | 国产成人午夜精华液 | 黄色小视频在线观看免费 | 大学生三级中国dvd 日韩欧美一区二区区 | 日韩av在线播放观看 | 久久77777 | 天天做天天爱 | 99r精品视频 | 欧美性爱精品在线 | 日韩精品资源 | 99久久婷婷国产综合精品青牛牛 | 日韩欧美一区二区三区免费观看 | 午夜影院欧美 | 久久精品一二三区 | 五月天丁香在线 | 久久精品亚洲精品国产欧美 | 人妖被c到高潮欧美gay | 女人张开双腿让男人捅 | 欧美高清精品 | 在线观看国产精品入口男同 | 一色屋免费视频 | 国产精品久久久一区二区 | 黄色福利社| 日韩毛片免费看 | 蜜桃视频无码区在线观看 | 精品视频91 | 亚洲男人的天堂在线观看 | 国产操片| 日韩成人精品一区二区三区 | a级黄毛片 | 亚洲乱码国产乱码精品天美传媒 | 黄色高潮视频 | 一区二区三区偷拍 | 欧美69精品久久久久久不卡 | 久久免费看少妇高潮v片特黄 | 成人午夜小视频 | 999国产视频 | 人人草人人澡 | 99精品偷自拍 | 99久久精品无码一区二区毛片 | 午夜粉色视频 | 九九av在线| 色图社区 | 国产精品一二三四区 | 欧美性www| 免费成人高清视频 | 国产日韩精品在线观看 | 处破女av一区二区 | 精品一区二区久久 | 99re这里只有精品在线 | 亚洲av无码一区二区三区性色 | 婷婷国产一区二区三区 | 亚洲在线视频播放 | 国产精品18久久久久久无码 | 亚洲高清视频免费观看 | 欧美成人午夜免费视在线看片 | 欧美成人黄色片 | 久久国产毛片 | 18深夜在线观看免费视频 | 国产精品一区久久久 | 人妻av一区二区三区 | 国产欧美一区二区三区精华液好吗 | 一区二区三区久久久久 | 日韩成年人视频 | 免费国产视频在线观看 | 天天想你免费观看完整版高清电影 | 在线观看av的网址 | 国产高清免费在线观看 | 日韩插插插 | 男人的天堂在线观看av | 中文字幕在线观看91 | 国产精品污网站 |