[R] Algorithme de Ford
Posté : sam. 03 sept. 2011 19:41
B
onjour à tous !
Je souhaiterais convertir l'algorithme de Ford (Theorie des graphes) en programme autoit ci dessous
voici le pseudo code l'idéal serait de parvenir à un petit programme ou l'on entre le nom de tous les arcs et leurs valeurs afin d'obtenir le chemin le plus court.
Pourriez vous svp m'aider à réaliser ce programme ? Ci dessous ce que j'ai compris ...
( Je ne comprends pas très bien le pseudo code ...mais avec votre aide cela devrait être relativement facile à mettre en oeuvre )
Merci d'avance pour votre aide et vos conseils
booléen Bellman_Ford(G, s)
initialisation (G, s) // les poids de tous les sommets sont mis à +infini
// le poids du sommet initial à 0
pour i=1 jusqu'à Nombre de sommets -1 faire
| pour chaque arc (u, v) du graphe faire
| | paux := poids(u) + poids(arc(u, v));
| | si paux < poids(v) alors
| | | pred(v) := u;
| | | poids(v) := paux;
pour chaque arc (u, v) du graphe faire
| si poids(u) + poids(arc(u, v)) < poids(v) alors
| retourner faux
retourner vrai
Je souhaiterais convertir l'algorithme de Ford (Theorie des graphes) en programme autoit ci dessous
voici le pseudo code l'idéal serait de parvenir à un petit programme ou l'on entre le nom de tous les arcs et leurs valeurs afin d'obtenir le chemin le plus court.
Pourriez vous svp m'aider à réaliser ce programme ? Ci dessous ce que j'ai compris ...
( Je ne comprends pas très bien le pseudo code ...mais avec votre aide cela devrait être relativement facile à mettre en oeuvre )
Merci d'avance pour votre aide et vos conseils
booléen Bellman_Ford(G, s)
initialisation (G, s) // les poids de tous les sommets sont mis à +infini
// le poids du sommet initial à 0
pour i=1 jusqu'à Nombre de sommets -1 faire
| pour chaque arc (u, v) du graphe faire
| | paux := poids(u) + poids(arc(u, v));
| | si paux < poids(v) alors
| | | pred(v) := u;
| | | poids(v) := paux;
pour chaque arc (u, v) du graphe faire
| si poids(u) + poids(arc(u, v)) < poids(v) alors
| retourner faux
retourner vrai
Code : Tout sélectionner
#NoTrayIcon
global $g,$s=0,$i,$u,$p,$nbre
inputbox("Entrer nombre de sommets","Nbre sommets","")
inputbox("Entrer la valeur du Premier sommet")
inputbox("Entrer la valeur du Second Sommet")
;~ lister la valeur et le nom de tous les sommets
function ford(p,u,v)
for $i =1 to $nbre-1
$p+$u
next
end func