160 likes | 334 Views
Prim algoritmus. Készítette Schlezák Márton. Rövid ismertető. A Prim algoritmus lépésenként alkalmazva a kék szabályt egy minimális költségű feszítőfát ad eredményül.
E N D
Prim algoritmus Készítette Schlezák Márton
Rövid ismertető A Prim algoritmus lépésenként alkalmazva a kék szabályt egy minimális költségű feszítőfát ad eredményül. Kék szabály:A kék szabály meg tudja mondani egy élről hogy „kék-e”, vagyis hogy az-az él benne van a min. költ. feszítőfában.
Jelölések X(halmaz): a minimális részfa csúcsainak halmaza; minQ (elsőbbségi sor): a csúcsok X halmaztól való távolság megadására szolgál, amíg nem ismerjük a távolságot addig végtelen nagynak vesszük, melynek jelölésére a # jelet használjuk; P[1..n] (tömb): a feszítőfabeli szülő csúcsok indexének nyilvántartására szolgál;
Jelölések Start csúcs: Indexek: 1 ... n A csúcs eleme a minQ-nak és nincs X béli szomszédja: A csúcs eleme a minQ-nak és már van X béli szomszédja: A csúcs kikerült minQ-ból, bekerült X-be: Aktuális él(ek): Minimális feszítőfa része:
13 s: 1 5 G F H C A D B E 6 14 3 4 5 15 7 9 11 8 X : - minQ : 2 10 d[v] : v : 16 H A B C D E F G NIL NIL NIL NIL NIL NIL NIL NIL P :
13 1 5 G F H C A D B E 6 14 3 4 5 15 7 9 11 8 X : - minQ : 2 10 0 d[v] : C v : 16 H A B C D E F G NIL NIL NIL NIL NIL NIL NIL NIL P :
13 1 5 G F H C A D B E 6 14 3 4 5 15 7 9 11 8 X : C minQ : 2 10 1 5 13 6 d[v] : D H E A v : 16 H A B C D E F G NIL NIL NIL NIL NIL NIL NIL NIL P :
13 1 5 G F H C A D B E 6 14 3 4 5 15 7 9 11 8 X : C, D minQ : 2 10 3 5 6 5 d[v] : G H A E v : 16 H A B C D E F G NIL C NIL NIL NIL NIL NIL NIL P :
13 1 5 G F H C A D B E 6 14 3 4 5 15 7 9 11 8 X : C, D, G minQ : 2 10 11 4 5 8 6 d[v] : F A H E B v : 16 H A B C D E F G NIL C NIL NIL D NIL NIL NIL P :
13 1 5 G F H C A D B E 6 14 3 4 5 15 7 9 11 8 X : C, D, G, A minQ : 2 10 5 6 11 8 d[v] : H E B F v : 16 H A B C D E F G G C NIL NIL D NIL NIL NIL P :
13 1 5 G F H C A D B E 6 14 3 4 5 15 7 9 11 8 X : C, D, G, A, H minQ : 2 10 2 6 8 d[v] : F E B v : 16 H A B C D E F G G C NIL NIL D C NIL NIL P :
13 1 5 G F H C A D B E 6 14 3 4 5 15 7 9 11 8 X : C, D, G, A, H, F minQ : 2 10 6 8 d[v] : E B v : 16 H A B C D E F G G C NIL H D C NIL NIL P :
13 1 5 G F H C A D B E 6 14 3 4 5 15 7 9 11 8 X : C, D, G, A, H, F, E minQ : 2 10 8 d[v] : B v : 16 H A B C D E F G G C C H D C NIL NIL P :
13 1 5 G F H C A D B E 6 14 3 4 5 15 7 9 11 8 X : C, D, G, A, H, F, E, B minQ : 2 10 d[v] : v : 16 H A B C D E F G G C C H D C NIL G P :
1 G F H C A D B E 6 3 4 Végül berajzoljuk a minimális költségű feszítőfa éleit. 5 8 X : C, D, G, A, H, F, E, B minQ : 2 d[v] : v : H A B C D E F G G C C H D C NIL G P :