EPL231 – Data Structures and Algorithms
description
Transcript of EPL231 – Data Structures and Algorithms
Lab 11: DFS and BFS
Παναγιώτης Χαραλάμπους27/11/2009
ΑΒ
D FC
G EH
Παναγιώτης Χαραλάμπους27/11/2009
A B C D E F G HA 0 1 1 1 0 0 0 0B 1 0 1 0 0 0 0 0C 1 1 0 1 0 0 0 0D 1 0 1 0 1 1 1 0E 0 0 0 1 0 1 0 0F 0 0 0 1 1 0 0 0G 0 0 0 1 0 0 0 1H 0 0 0 0 0 0 1 0
Παναγιώτης Χαραλάμπους27/11/2009
ΑΒC
ED
FGH
A C E F G
B C DA CA B D
GD H
D FD E
Παναγιώτης Χαραλάμπους27/11/2009
Παναγιώτης Χαραλάμπους27/11/2009
Α
Β C
Α
Β C
Α
Β C
Γράφος G BFS DFS
Παναγιώτης Χαραλάμπους27/11/2009
D
C F
E HA
B G
Έξοδος ΔιαδικασίαςDCABFEHG
Παναγιώτης Χαραλάμπους27/11/2009
D
C F
E HA
B G
Έξοδος ΔιαδικασίαςD
C
A
B
F
E
H
G
Ουρά Q{D}
{C,F}
{F, A}
{A, E, H}
{E, H, B}
{H, B}
{B, G}
{G}
{ }
Παναγιώτης Χαραλάμπους27/11/2009
Πίνακας Γειτνίασης Πίνακας [8]x[8] Αρχικοποίηση βάση γράφου διαφάνειας 2
Λίστα Γειτνίασης Πίνακας [8]x[1] Κόμβοι που αναπαριστούν ακμές που έχει
η κάθε θέση πίνακα Αρχικοποίηση βάση γράφου διαφάνειας 2
Λίστα για BFSΠαναγιώτης Χαραλάμπους27/11/2009
void DFS(Graph G, Vertex v): ξεκινάει την διαδικασία διερεύνησης κατά βάθος από τον κόμβο του γράφου G
void BFS(Graph G, Vertex v): ξεκινάει την διαδικασία διερεύνησης κατά πλάτος από τον κόμβο v του γράφου G
Παναγιώτης Χαραλάμπους27/11/2009
Παναγιώτης Χαραλάμπους27/11/2009