給定有向圖 n 點 m 邊,判斷是否存在環。輸出 Yes(有環)或 No(無環)。多組測資。
cnt。若 cnt < n → 有環(Yes),否則 No。#include <bits/stdc++.h>
using namespace std;
int main() {
int n, m;
while (cin >> n >> m, n || m) {
vector> g(n);
vector indeg(n, 0);
for (int i=0;i> u >> v;
g[u].push_back(v);
indeg[v]++;
}
queue q;
for (int i=0;i
複雜度
- 時間:
O(n+m)。
- 空間:
O(n+m)。