Algorithme de Dijkstra
Fermé
markaz
Messages postés
331
Date d'inscription
mercredi 18 avril 2007
Statut
Membre
Dernière intervention
16 septembre 2015
-
2 déc. 2009 à 17:16
markaz Messages postés 331 Date d'inscription mercredi 18 avril 2007 Statut Membre Dernière intervention 16 septembre 2015 - 3 déc. 2009 à 09:37
markaz Messages postés 331 Date d'inscription mercredi 18 avril 2007 Statut Membre Dernière intervention 16 septembre 2015 - 3 déc. 2009 à 09:37
A voir également:
- Algorithme de Dijkstra
- Logiciel algorithme gratuit - Télécharger - Édition & Programmation
- Logiciel algorithme euromillion - Télécharger - Loisirs créatifs
- Code ascii algorithme - Guide
- Algorithme maximum de 3 nombres ✓ - Forum Algorithmes / Méthodes
- Algorithme euromillion excel gratuit - Forum Algorithmes / Méthodes
7 réponses
Cqqn
Messages postés
964
Date d'inscription
vendredi 22 novembre 2002
Statut
Membre
Dernière intervention
1 avril 2010
21
2 déc. 2009 à 17:32
2 déc. 2009 à 17:32
De rien.
Etape 1 :
Sélectionner le titre de ton post
Etape 2 :
Copier la sélection
Etape 3 :
Ouvrir une nouvelle fenêtre ou un nouvel onglet de telle sorte que la page s'affiche sur un moteur de recherche, ou bien utiliser directement le champ de saisie qui parfois se situe directement dans la barre d'outil du navigateur internet utilisé.
Etape 4 :
Coller ce qui a préalablement été copié dans le champ idoine
Etape 5 :
Appuyer sur la touche entrée du clavier, ou cliquer sur le bouton qui valide la saisie, afin que le moteur de recherche effectue la recherche.
Etape 6 :
Cliquer sur l'un des liens proposés en résultat par le moteur de recherche
Etape 7 :
Démerdes-toi !
Faut pas abuser non plus !
A noter que tu peux sauter les Etapes 1 à 6 pour peu que tu aies été un minimum attentif lors du cours, ou bien te référer aux notes d'un des étudiants, voire les tiennes.
Etape 1 :
Sélectionner le titre de ton post
Etape 2 :
Copier la sélection
Etape 3 :
Ouvrir une nouvelle fenêtre ou un nouvel onglet de telle sorte que la page s'affiche sur un moteur de recherche, ou bien utiliser directement le champ de saisie qui parfois se situe directement dans la barre d'outil du navigateur internet utilisé.
Etape 4 :
Coller ce qui a préalablement été copié dans le champ idoine
Etape 5 :
Appuyer sur la touche entrée du clavier, ou cliquer sur le bouton qui valide la saisie, afin que le moteur de recherche effectue la recherche.
Etape 6 :
Cliquer sur l'un des liens proposés en résultat par le moteur de recherche
Etape 7 :
Démerdes-toi !
Faut pas abuser non plus !
A noter que tu peux sauter les Etapes 1 à 6 pour peu que tu aies été un minimum attentif lors du cours, ou bien te référer aux notes d'un des étudiants, voire les tiennes.
markaz
Messages postés
331
Date d'inscription
mercredi 18 avril 2007
Statut
Membre
Dernière intervention
16 septembre 2015
5
3 déc. 2009 à 09:37
3 déc. 2009 à 09:37
Quelqu'un peut-il m'expliquer?
fonction Dijkstra (nœuds, fils, distance, debut, fin)
Pour n parcourant nœuds
n.parcouru = infini // Peut être implémenté avec -1
n.precedent = 0
Fin pour
debut.parcouru = 0
PasEncoreVu = nœuds
Tant que PasEncoreVu != liste vide
n1 = minimum(PasEncoreVu) // Le nœud dans PasEncoreVu avec parcouru le plus petit
PasEncoreVu.enlever(n1)
Pour n2 parcourant fils(n1) // Les nœuds reliés à n1 par un arc
Si n2.parcouru > n1.parcouru + distance(n1, n2) // distance correspond au poids de l'arc reliant n1 et n2
n2.parcouru = n1.parcouru + distance(n1, n2)
n2.precedent = n1 // Dit que pour aller à n2, il faut passer par n1
Fin si
Fin pour
Fin tant que
chemin = liste vide
n = fin
Tant que n != debut
chemin.ajouterAvant(n)
n = n.precedent
Fin tant que
chemin.ajouterAvant(debut)
Retourner chemin
Fin fonction Dijkstra
fonction Dijkstra (nœuds, fils, distance, debut, fin)
Pour n parcourant nœuds
n.parcouru = infini // Peut être implémenté avec -1
n.precedent = 0
Fin pour
debut.parcouru = 0
PasEncoreVu = nœuds
Tant que PasEncoreVu != liste vide
n1 = minimum(PasEncoreVu) // Le nœud dans PasEncoreVu avec parcouru le plus petit
PasEncoreVu.enlever(n1)
Pour n2 parcourant fils(n1) // Les nœuds reliés à n1 par un arc
Si n2.parcouru > n1.parcouru + distance(n1, n2) // distance correspond au poids de l'arc reliant n1 et n2
n2.parcouru = n1.parcouru + distance(n1, n2)
n2.precedent = n1 // Dit que pour aller à n2, il faut passer par n1
Fin si
Fin pour
Fin tant que
chemin = liste vide
n = fin
Tant que n != debut
chemin.ajouterAvant(n)
n = n.precedent
Fin tant que
chemin.ajouterAvant(debut)
Retourner chemin
Fin fonction Dijkstra
linx161
Messages postés
710
Date d'inscription
samedi 7 février 2009
Statut
Membre
Dernière intervention
4 novembre 2012
21
2 déc. 2009 à 17:28
2 déc. 2009 à 17:28
va voir sur sourceforge...
et n'oublies pas, google est ton ami (sinon je peut te le faire mais va falloir attendre une heure...)
et n'oublies pas, google est ton ami (sinon je peut te le faire mais va falloir attendre une heure...)
linx161
Messages postés
710
Date d'inscription
samedi 7 février 2009
Statut
Membre
Dernière intervention
4 novembre 2012
21
2 déc. 2009 à 17:34
2 déc. 2009 à 17:34
ça marche aussi, mais c'est pas sympa... il est ptet malade et on lui a fait passer que les exos, ca m'est arrivé et c'est pas tellement le genre de réponses que j'aurai apprécié
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
markaz
Messages postés
331
Date d'inscription
mercredi 18 avril 2007
Statut
Membre
Dernière intervention
16 septembre 2015
5
2 déc. 2009 à 18:29
2 déc. 2009 à 18:29
j'ai essayé mais sans résultat
Cqqn
Messages postés
964
Date d'inscription
vendredi 22 novembre 2002
Statut
Membre
Dernière intervention
1 avril 2010
21
2 déc. 2009 à 18:43
2 déc. 2009 à 18:43
ben dans la page wikipedia tu as un bloc en pseudo-code, à partir de là tu dois pouvoir l'adapter dans n'importe quel langage...
markaz
Messages postés
331
Date d'inscription
mercredi 18 avril 2007
Statut
Membre
Dernière intervention
16 septembre 2015
5
3 déc. 2009 à 09:35
3 déc. 2009 à 09:35
J'ai vu ce code mais le problème c'est je ne comprend rien en code. les n.parcour, n.ajouter avant etc...
J'aimerais avoir un code détaillé.
J'aimerais avoir un code détaillé.