Bonsoir,
Je cherche a coder Dijkstra en C, j'ai donc regardé l'algo sur Wikipedia et j'aurais besoin d'explications dessus.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
Dijkstra(G,Poids,sdeb)
 Initialisation(G,sdeb)
 P := ensemble vide
 Q := ensemble de tous les nœuds
 tant que Q n'est pas un ensemble vide
       faire s1 := Trouve_min(Q) (1)
          P := P union {s1} (2)
          pour chaque nœud  s2 voisin de s1
              faire maj_distances(s1,s2)
(1) - On doit trouver la valeur min contenu dans la matrice qui represente le graphe? A quoi correspond S1?
(2) - A quoi correspond union?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
Initialisation(G,sdeb)
1 pour chaque point s de G
2    faire d[s] := infini             /* on initialise les sommets autres que sdeb à 0 */[3]
3       prédecesseur[s] := 0          /* car on ne connaît au départ aucun chemin entre s et sdeb */
4 d[sdeb] := 0                        /* sdeb étant le point le plus proche de sdeb */
Comment coder infini? par -1 ca va poser des difficultées quand on va vouloir faire une addition ou autre non?

Merci pour votre aide