Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- bool dfs(int node , int par) /// returns 1 if cycle found
- {
- bool ans = 0;
- dep[node] = dep[par] + 1;
- vis[node] = 1;
- for(int u:edg[node]){
- if(vis[u] == 0) ans |= dfs(u , node);
- else if(u != par && dep[u] < dep[node]){
- ans = 1;
- }
- }
- return ans;
- }
- /// O(n + m)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement