110 likes | 217 Views
Lab 11: DFS and BFS. EPL231 – Data Structures and Algorithms. Ο Γράφος. Β. Α. C. D. F. G. H. E. Πίνακας Γειτνίασης. Λίστα Γειτνίασης. Α. B. C. D. Β. A. C. C. A. B. D. D. A. C. E. F. G. E. D. F. F. D. E. G. D. H. H. G.
E N D
Lab 11: DFS and BFS EPL231 – Data Structures and Algorithms
Ο Γράφος Β Α C D F G H E Παναγιώτης Χαραλάμπους
Πίνακας Γειτνίασης Παναγιώτης Χαραλάμπους
Λίστα Γειτνίασης Α B C D Β A C C A B D D A C E F G E D F F D E G D H H G Παναγιώτης Χαραλάμπους
Διερεύνηση κατά βάθος & κατά πλάτος (DFS&BFS) Παναγιώτης Χαραλάμπους
Συζήτηση Γράφος G BFS DFS Α Α Α Β C Β C Β C Παναγιώτης Χαραλάμπους
Παράδειγμα DFS D Έξοδος Διαδικασίας D C F C A B F A E H E H G B G Παναγιώτης Χαραλάμπους
Παράδειγμα BFS D Ουρά Q Έξοδος Διαδικασίας {D} D {C,F} C C F {F, A} F A {A, E, H} E {E, H, B} A E H H {H, B} B {B, G} G {G} B G { } Παναγιώτης Χαραλάμπους
Δομές για υλοποίηση • Πίνακας Γειτνίασης • Πίνακας [8]x[8] • Αρχικοποίηση βάση γράφου διαφάνειας 2 • Λίστα Γειτνίασης • Πίνακας [8]x[1] • Κόμβοι που αναπαριστούν ακμές που έχει η κάθε θέση πίνακα • Αρχικοποίηση βάση γράφου διαφάνειας 2 • Λίστα για BFS Παναγιώτης Χαραλάμπους
Συναρτήσεις για υλοποίηση • void DFS(Graph G, Vertex v):ξεκινάει την διαδικασία διερεύνησης κατά βάθος από τον κόμβοτου γράφου G • void BFS(Graph G, Vertex v):ξεκινάει την διαδικασία διερεύνησης κατά πλάτος από τον κόμβο v του γράφου G Παναγιώτης Χαραλάμπους