Advertisement
Diamyx

GRAFURI DF

May 30th, 2019
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.69 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. #include <list>
  4. #include <utility>
  5. #include <algorithm>
  6. using namespace std;
  7.  
  8. vector<int> tata; //declaram
  9. vector<int> niv;
  10. vector<bool> vizitat;
  11. typedef vector<list<int> > graf;
  12.  
  13. void init_DF(int n) //initializam in main
  14. {
  15.     tata = vector<int>(n,-1);
  16.     niv = vector<int>(n);
  17.     vizitat = vector<bool>(n);
  18. }
  19.  
  20. void DF(int s, graf &g)
  21. {
  22.     vizitat[s] = 1;
  23.     for(list<int>::iterator it = g[s].begin(); it != g[s].end(); it++)
  24.         if(!vizitat[*it])
  25.         {
  26.             tata[*it] = s;
  27.             niv[*it] = niv[s]+1;
  28.             DF(*it,g); //aplicam recursiv DF pentru radacina *it
  29.         }
  30. }
  31.  
  32. int main()
  33. {
  34.  
  35.     return 0;
  36. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement