Presentation laddar. Vänta.

Presentation laddar. Vänta.

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.

Liknande presentationer


En presentation över ämnet: "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."— Presentationens avskrift:

1 Datastrukturer och algoritmer VT © 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!


Ladda ner ppt "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."

Liknande presentationer


Google-annonser