Ladda ner presentationen
Presentation laddar. Vänta.
Publicerades avIda Ström
1
Datastrukturer och algoritmer VT 2003 1© Anders Broberg, Ulrika Hägglund, Lena Kallin Westin, 2003 Bredden-först exempel ABCD EFGH IJKL MNOP = Obesökt nod = Öppen nod = Stängd nod Aktuell nod är röd
2
Bredden-först exempel ABCD EFGH IJKL MNOP ABCD EFGH IJKL MNOP Välj en (obesökt) nod k och markera den öppen. PQ = {} Markera k stängd För varje öppen granne till k placeras en referens till noden tillsammans med ett tilldelat prioritetsvärde i prioritetskön
3
Bredden-först exempel ABCD EFGH IJKL MNOP Varje obesökt granne till k markeras som öppen och en referens till noden tillsammans med ett tilldelat prioritetsvärde i prioritetskön PQ = {(B, 100) (F,99), (E,98)} ABCD EFGH IJKL MNOP Välj den nod k som det första elementet i prioritetskön refererar till och ta bort köelementet ur prioritetskön PQ = {(F,99), (E,98)}
4
Bredden-först exempel ABCD EFGH IJKL MNOP Markera k stängd För varje öppen granne till k placeras en referens till noden tillsammans med ett tilldelat prioritetsvärde i prioritetskön PQ = {(F,99), (E,98), (F, 97)} ABCD EFGH IJKL MNOP Varje obesökt granne till k markeras som öppen och en referens till noden tillsammans med ett tilldelat prioritetsvärde i prioritetskön PQ = {(F,99), (E,98), (F, 97), (C, 96)}
5
Bredden-först exempel ABCD EFGH IJKL MNOP Välj den nod k som det första elementet i prioritetskön refererar till och ta bort köelementet ur prioritetskön PQ = {(E,98), (F, 97), (C, 96)} ABCD EFGH IJKL MNOP Markera k stängd Varje öppen granne till k placeras i prioritetskön PQ = {(E,98), (F, 97), (C, 96), (E, 95)} Varje obesökt granne görs öppen och läggs till i kön PQ = {(E,98), (F, 97), (C, 96), (E, 95), (I, 94)}
6
Bredden-först exempel ABCD EFGH IJKL MNOP Välj den nod k som det första elementet i prioritetskön refererar till och ta bort köelementet ur prioritetskön PQ = {(F, 97), (C, 96), (E, 95), (I, 94)} ABCD EFGH IJKL MNOP Markera k stängd Varje öppen granne till k placeras i prioritetskön PQ = {(F, 97), (C, 96), (E, 95), (I, 94), (I, 93)} Varje obesökt granne görs öppen och läggs till i kön
7
Bredden-först exempel ABCD EFGH IJKL MNOP Välj den nod k som det första elementet i prioritetskön refererar till och ta bort köelementet ur prioritetskön (F redan stängd) PQ = {(E, 95), (I, 94), (I, 93)} ABCD EFGH IJKL MNOP Markera k stängd Varje öppen granne till k placeras i prioritetskön Varje obesökt granne görs öppen och läggs till i kön PQ = {(E, 95), (I, 94), (I, 93), (D, 92), (G, 91)}
8
Bredden-först exempel Välj den nod k som det första elementet i prioritetskön refererar till och ta bort köelementet ur prioritetskön (E var redan stängd) PQ = {(I, 93), (D, 92), (G, 91)} ABCD EFGH IJKL MNOP Markera k stängd Varje öppen granne till k placeras i prioritetskön Varje obesökt granne görs öppen och läggs till i kön PQ = {(I, 93), (D, 92), (G, 91), (J, 90), (M, 89), (N, 88)} ABCD EFGH IJKL MNOP
9
Bredden-först exempel Välj den nod k som det första elementet i prioritetskön refererar till och ta bort köelementet ur prioritetskön (I redan stängd) PQ = {(G, 91), (J, 90), (M, 89), (N, 88)} ABCD EFGH IJKL MNOP ABCD EFGH IJKL MNOP Markera k stängd Varje öppen granne till k placeras i prioritetskön PQ={(G,91), (J, 90), (M, 89), (N, 88), (G, 87)} Varje obesökt granne görs öppen och läggs till i kön PQ={(G,91), (J, 90), (M, 89), (N, 88), (G, 87), (H, 86)}
10
Bredden-först exempel Välj den nod k som det första elementet i prioritetskön refererar till och ta bort köelementet ur prioritetskön PQ={(J, 90), (M, 89), (N, 88), (G, 87), (H, 86)} ABCD EFGH IJKL MNOP ABCD EFGH IJKL MNOP Markera k stängd Varje öppen granne till k placeras i prioritetskön PQ={(J,90),(M,89),(N,88),(G,87),(H,86), (J,85)} Varje obesökt granne görs öppen och läggs till i kön PQ={(J,90),(M,89),(N,88),(G,87),(H,86), (J,85),(K,84),(L,83)}
11
Bredden-först exempel Välj den nod k som det första elementet i prioritetskön refererar till och ta bort köelementet ur prioritetskön PQ={(M,89),(N,88),(G,87),(H,86), (J,85),(K,84),(L,83)} ABCD EFGH IJKL MNOP ABCD EFGH IJKL MNOP Markera k stängd Varje öppen granne till k placeras i prioritetskön PQ={(M,89),(N,88),(G,87),(H,86), (J,85),(K,84),(L,83),(K,82)} Varje obesökt granne görs öppen och läggs till i kön
12
Bredden-först exempel Välj den nod k som det första elementet i prioritetskön refererar till och ta bort köelementet ur prioritetskön PQ={(N,88),(G,87),(H,86),(J,85), (K,84),(L,83),(K,82)} ABCD EFGH IJKL MNOP ABCD EFGH IJKL MNOP Markera k stängd Varje öppen granne till k placeras i prioritetskön PQ={(N,88),(G,87),(H,86),(J,85), (K,84),(L,83),(K,82),(N,81)} Varje obesökt granne görs öppen och läggs till i kön
13
Bredden-först exempel Välj den nod k som det första elementet i prioritetskön refererar till och ta bort köelementet ur prioritetskön PQ={(G,87),(H,86),(J,85),(K,84), (L,83), (K,82),(N,81)} ABCD EFGH IJKL MNOP ABCD EFGH IJKL MNOP Markera k stängd Varje öppen granne till k placeras i prioritetskön PQ={(G,87),(H,86),(J,85),(K,84), (L,83), (K,82),(N,81),(K,80)} Varje obesökt granne görs öppen och läggs till i kön
14
Bredden-först exempel Välj den nod k som det första elementet i prioritetskön refererar till och ta bort köelementet ur prioritetskön (G redan stängd) PQ={(J,85),(K,84), (L,83), (K,82), (N,81),(K,80)} Markera k stängd. Varje öppen granne till k placeras i prioritetskön PQ={(J,85),(K,84), (L,83), (K,82), (N,81),(K,80),(L,79)} Varje obesökt granne görs öppen och läggs till i kön ABCD EFGH IJKL MNOP ABCD EFGH IJKL MNOP
15
Bredden-först exempel Välj den nod k som det första elementet i prioritetskön refererar till och ta bort köelementet ur prioritetskön (J redan stängd) PQ={(L,83), (K,82), (N,81), (K,80)} ABCD EFGH IJKL MNOP ABCD EFGH IJKL MNOP Markera k stängd. Varje öppen granne till k placeras i prioritetskön Varje obesökt granne görs öppen och läggs till i kön PQ={(L,83), (K,82), (N,81), (K,80), (O,79)}
16
Bredden-först exempel Välj den nod k som det första elementet i prioritetskön refererar till och ta bort köelementet ur prioritetskön PQ={(K,82), (N,81), (K,80), (O,79)} ABCD EFGH IJKL MNOP ABCD EFGH IJKL MNOP Markera k stängd. Varje öppen granne till k placeras i prioritetskön Varje obesökt granne görs öppen och läggs till i kön PQ={(K,82), (N,81), (K,80), (O,79), (P,78)}
17
Bredden-först exempel Välj den nod k som det första elementet i prioritetskön refererar till och ta bort köelementet ur prioritetskön (K,N,K redan stängd) PQ={(P,78)} ABCD EFGH IJKL MNOP ABCD EFGH IJKL MNOP Markera k stängd. Varje öppen granne till k placeras i prioritetskön PQ ={(P,78), (P,77)} Varje obesökt granne görs öppen och läggs till i kön
18
Bredden-först exempel Välj den nod k som det första elementet i prioritetskön refererar till och ta bort köelementet ur prioritetskön (K,N,K redan stängd) PQ={(P,77)} ABCD EFGH IJKL MNOP ABCD EFGH IJKL MNOP Markera k stängd. Varje öppen granne till k placeras i prioritetskön Varje obesökt granne görs öppen och läggs till i kön Sista elementet i kön redan stängt, alla noder stängda. Klart!
Liknande presentationer
© 2024 SlidePlayer.se Inc.
All rights reserved.