Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 18-07-17
- ALGO(G,a,b,c)
- INIT(G)
- dfs_visit(G,a,c1)
- dfs_visit(GT,b,c2)
- if (c1[c]=n && c2[c]=n) then //ci so passato due volte //1 domanda risolta
- if (dfs_visit_ciclo(G,b,c3))then -> se esiste ciclo //2 domanda risolta
- c4[c]=nero //sto colorando c di nero per la dfs_visit dopo
- dfs_visit(G,a,c4) //parte dfs_visit e non passerà per c e arriverà a b probabilmente
- if c4[b]=n then //controllo se b è nero dopo l'ultima dfs_visit
- return false //non mi serve c4[b]=nero perché sarebbe un altro percorso che lo raggiunge
- return true //assicuro che gli unici vertici con ciclo sono quelli che passano per c
- else
- return false // sminchierei il secondo if
- else
- return false //sminchierei il primo if
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement