La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Algorithme de Dijkstra Correction du TD 23. Quel est le plus court chemin reliant A à H ?

Présentations similaires


Présentation au sujet: "Algorithme de Dijkstra Correction du TD 23. Quel est le plus court chemin reliant A à H ?"— Transcription de la présentation:

1 Algorithme de Dijkstra Correction du TD 23

2 Quel est le plus court chemin reliant A à H ?

3 On construit un tableau avec le nom de tous les sommets, et on place 0 dans le sommet A et dans les autres ABCDEFGHIJ Sommet sélectionné 0A On sélectionne le sommet qui a la plus faible valeur : A

4 On barre la colonne du sommet selectionné : A On cherche les sommets adjacents à A : B, I et J On repère leur coefficient, que lon va ajouter à la valeur du sommet précedemment selectionné : A (0)

5 ABCDEFGHIJ Sommet sélectionné 0A 0+4 4(A) 0+8 8(A) 0+5 5(A) On rempli le tableau en additionnant la valeur précédente avec le poids de larête considérée. Si la valeur est plus faible que celle inscrite dans la case au dessus, on la garde, sinon on conserve la précédente. On sélectionne le sommet de plus faible valeur : B B

6 ABCDEFGHIJ Sommet sélectionné 0A 0+4 4(A) 0+8 8(A) 0+5 5(A) B 4+5 9(B) 4+6 8(A)5(A) J pour le sommet I, la nouvelle valeur (10) est plus élevée que la précédente (8) donc on garde la plus faible

7 ABCDEFGHIJ Sommet sélectionné 0A 0+4 4(A) 0+8 8(A) 0+5 5(A) B 4+5 9(B) 4+6 8(A)5(A) J 5+3 8(J)9(B) 8(A) Lorsque 2 sommets sont de même valeur, on peut choisir celui quon veut ! Optons par exemple pour G G

8 ABCDEFGHIJ Sommet sélectionné 0A 0+4 4(A) 0+8 8(A) 0+5 5(A) B 4+5 9(B) 4+6 8(A)5(A) J 5+3 8(J)9(B) 8(A) G 8+5 8(A) (G) 9(B) I

9 ABCDEFGHIJ Sommet sélectionné 0A 0+4 4(A) 0+8 8(A) 0+5 5(A) B 4+5 9(B) 4+6 8(A)5(A) J 5+3 8(J)9(B) 8(A) G 8+5 8(A) (G) 9(B) I 8+4 9(B) 10(G) C

10 ABCDEFGHIJ Sommet sélectionné 0A 0+4 4(A) 0+8 8(A) 0+5 5(A) B 4+5 9(B) 4+6 8(A)5(A) J 5+3 8(J)9(B) 8(A) G 8+5 8(A) (G) 9(B) I 8+4 9(B) 10(G) C (C) 10(G) F

11 ABCDEFGHIJ Sommet sélectionné 0A 0+4 4(A) 0+8 8(A) 0+5 5(A) B 4+5 9(B) 4+6 8(A)5(A) J 5+3 8(J)9(B) 8(A) G 8+5 8(A) (G) 9(B) I 8+4 9(B) 10(G) C (C) 10(G) F (F) (F) 15(C) E

12 ABCDEFGHIJ Sommet sélectionné 0A 0+4 4(A) 0+8 8(A) 0+5 5(A) B 4+5 9(B) 4+6 8(A)5(A) J 5+3 8(J)9(B) 8(A) G 8+5 8(A) (G) 9(B) I 8+4 9(B) 10(G) C (C) 10(G) F (F) (F) 15(C) E H Une fois que le sommet darrivée a été sélectionné dans la dernière colonne : on sarrête (F)

13 ABCDEFGHIJ Sommet sélectionné 0A 0+4 4(A) 0+8 8(A) 0+5 5(A) B 4+5 9(B) 4+6 8(A)5(A) J 5+3 8(J)9(B) 8(A) G 8+5 8(A) (G) 9(B) I 8+4 9(B) 10(G) C (C) 10(G) F (F) (F) 15(C) E (E) 13(F) H On lit le chemin à lenvers en allant vers la dernière case de la lettre entre parenthèse à partir du sommet H : H 13(F) F - 10(G) G (J) J - 5(A) A - Avec un poids de 13

14 On vérifie : A-J-G-F-H avec un poids de 13 Facile !!!


Télécharger ppt "Algorithme de Dijkstra Correction du TD 23. Quel est le plus court chemin reliant A à H ?"

Présentations similaires


Annonces Google