1 / 27

Metode de parcurgere a grafurilor

Metode de parcurgere a grafurilor. Depth First(DF). Algoritm de parcurgere :. Se alege un varf de start.

taini
Download Presentation

Metode de parcurgere a grafurilor

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Metode de parcurgere a grafurilor Depth First(DF)

  2. Algoritm de parcurgere: • Se alege un varf de start. • Pentrufiecarevarfcurent(varf de start) se algeprimuladiacentiar in cazul in care nu existaadiacenti se realizeazaunulsaumai multi pasipana la primul nod unde se poaterealizanouaalegere. • Oricevarf ales devinevarfcurent.

  3. Coada: 9 Nodul de la care se incepeparcurgereaeste 9 9 6 Viz : 0 0 0 0 0 0 0 0 1 1 2 3 4 5 6 7 8 9 1 7 2 1. Se alegevarful de start: 9 2. Se marcheaza in viz cu 13. Se adaugaprimuladiacent al lui 9 in coada 5 4 3 8

  4. Coada: 9:3 Viz : 0 0 1 0 0 0 0 0 1 1 2 3 4 5 6 7 8 9 9 6 1 1. Se alegeprimuladiacent al lui 9 2. Se marcheaza 3 in viz cu 13. Se adauga in coada 3 7 2 5 4 3 8

  5. Coada: 9:3,1 Viz : 10 1 0 0 0 0 0 1 1 2 3 4 5 6 7 8 9 9 6 1 1. Se alegeprimuladiacent al lui 32. Se marcheaza 1 in viz cu 13. Se adauga in coada 1 7 2 5 4 3 8

  6. Coada: 9:3,1,2 Viz : 11 1 0 0 1 0 0 1 123 4 5 6 7 8 9 9 6 1 1. Se alegeprimuladiacent al lui 12. Se marcheaza 2 in viz cu 13. Se adauga in coada 2 7 2 5 4 3 8

  7. Coada: 9:3,1,2 Viz : 11 1 0 0 1 0 0 1 123 4 5 6 7 8 9 9 6 1 1. Se observa ca 2 nu mai are adiacentinemarcati . 2. se revine la nodul 1 7 2 5 4 3 8

  8. Coada: 9:3,1,2,6 Viz : 11 1 0 0 10 0 1 123 4 5 6 7 8 9 9 6 1 Se alegeprimuladiacent al lui 1. Se marcheaza 6 in viz cu 1; Se adauga in coada 6 7 2 5 4 3 8

  9. Coada: 9:3,1,2,6,5 Viz : 11 1 0 110 0 1 123 4 5 6 7 8 9 9 6 1 Se alegeprimuladiacent al lui 6. Se marcheaza 5 in viz cu 1. Se adauga in coada 5 7 2 5 4 3 8

  10. Coada: 9:3,1,2,6,5,4 Viz : 11 0 1 110 0 1 1234 5 6 7 8 9 9 6 1 Se alegeprimuladiacent al lui 5. Se marcheaza 4 in viz cu 1. Se adauga in coada 4. 7 2 5 4 3 8

  11. Coada: 9:3,1,2,6,5,4,7 Viz : 11 1 1111 0 1 1234 5 67 8 9 9 6 1 Se alegeprimuladiacent al lui 4. Se marcheaza 7 in viz cu 1. Se adauga in coada 7. 7 2 5 4 3 8

  12. Coada: 9:3,1,2,6,5,4,7,8 Viz : 11 1 111 1 0 1 1234 5 6789 9 6 1 Se observa ca 7 nu mai are adiacentinemarcati; 2. Se revine la nodul 4; 7 2 5 4 3 8

  13. Coada: 9:3,1,2,6,5,4,7,8 Viz : 11 1 1111 1 1 1234 5 6789 9 6 1 Se alegeprimuladiacent al lui 4. Se marcheaza 8 in viz cu 1. Se adauga in coada 8. 7 2 5 4 3 8

  14. Coada: 9:3,1,2,6,4,7,8 Viz : 11 1 1111 1 1 1234 5 6789 9 6 1 Se alegeprimuladiacent al lui 8. Se observa ca 8 sitoatenodurileanterioarelui nu mai au adiacentinevizitati. DF-ul s-a incheiat. 7 2 5 4 3 8

  15. Coada: 4 Nodul de la care se incepeparcurgereaeste 4 9 6 1 Viz : 0 0 0 10 0 0 0 0 1 2 34 5 6 7 8 9 7 2 1. Se alegevarful de start: 4 2. Se marcheaza in viz cu 13. Se adaugaprimuladiacent al lui 4 in coada 5 4 3 8

  16. Coada: 4:5 Viz : 0 0 011 0 0 0 0 1 2 34 56 7 8 9 9 6 1 1. Se alegeprimuladiacent al lui 4 2. Se marcheaza 5 in viz cu 13. Se adauga in coada 5 7 2 5 4 3 8

  17. Coada: 4:5,6 Viz : 0 0 0111 0 0 0 1 2 3456 7 8 9 9 6 1 1. Se alegeprimuladiacent al lui 5 2. Se marcheaza 6 in viz cu 13. Se adauga in coada 6 7 2 5 4 3 8

  18. Coada: 4:5,6,1 Viz : 1 0 0111 0 0 0 1 2 3456 7 8 9 9 6 1 1. Se alegeprimuladiacent al lui 6 2. Se marcheaza 1 in viz cu 13. Se adauga in coada 1 7 2 5 4 3 8

  19. Coada: 4:5,6,1,2 Viz : 11011 1 0 0 0 123456 7 8 9 9 6 1 1. Se alegeprimuladiacent al lui 1 2. Se marcheaza 2 in viz cu 13. Se adauga in coada 2 7 2 5 4 3 8

  20. Coada: 4:5,6,1,2,3 Viz : 11111 1 0 0 0 123456 7 8 9 9 6 1 1. Se alegeprimuladiacent al lui 2 2. Se marcheaza 3 in viz cu 13. Se adauga in coada 3 7 2 5 4 3 8

  21. Coada: 4:5,6,1,2,3,8 Viz : 11111 1 0 10 123456 7 89 9 6 1 1. Se alegeprimuladiacent al lui 3 2. Se marcheaza 8 in viz cu 13. Se adauga in coada 8 7 2 5 4 3 8

  22. Coada: 4:5,6,1,2,3 Viz : 11111 1 0 0 0 123456 7 8 9 9 6 1 1. Se observaca 8 nu mai are adiacentineamarcati.2. Se revine la nodul 3 7 2 5 4 3 8

  23. Coada: 4:5,6,1,2,3,8,9 Viz : 11111 1 0 11 123456 7 89 9 6 1 1. Se alegeprimuladiacent al lui 3 2. Se marcheaza 9 in viz cu 13. Se adauga in coada 9 7 2 5 4 3 8

  24. Coada: 4:5,6,1,2,3,8,9,7 Viz : 11111 1 111 1234567 89 9 6 1 1. Se alegeprimuladiacent al lui 9 2. Se marcheaza 7 in viz cu 13. Se adauga in coada 7 7 2 5 4 3 8

  25. Coada: 4:5,6,1,2,3,8,9,7 Viz : 11111 1 111 123456789 9 6 1 1. Se alegeprimuladiacent al lui 7 2. Se observa ca 7 sitoatenodurileanterioarelui nu mai au adiacentinevizitati.3. DF-ulsaincheiat. 7 2 5 4 3 8

  26. ALGORiTM: intviz[100]; void df(int x) { inti; cout<<x<<":"<<" "; viz[x]=1; for(i=1;i<=n;i++) if(a[x][i]==1&&viz[i]==0) df(i); }

  27. PROF. COORDONATOR: GAVRIL FLORIN Realizar: CATALIN MARTISCA

More Related