cs_tibo007
Messages postés4Date d'inscriptiondimanche 4 janvier 2004StatutMembreDernière intervention 9 février 2007
-
15 mars 2006 à 16:22
cuq
Messages postés344Date d'inscriptionmardi 3 juin 2003StatutMembreDernière intervention21 mars 2008
-
16 mars 2006 à 11:21
Bonjour,
Je possede dans une base de données sous Sql server des tables contenant des paires de villes avec une ponderation representant la distance qui les sépare.
J'ai besoin de trouver le plus court chemin entre 2 villes données.
Je souhaite utiliser Dijkstra: je possede l'algo( et le comprend...) mais je ne sais pas comment l'appliquer a ces données!!
Faut-il que j'importe les données dans un fichier avant d'appliquer l'algo?? Est-il possible d'appliquer l'algo directement sur la base?
Selon vous quelle est la méthode la plus adaptée sur un tel système??
rvblog
Messages postés792Date d'inscriptionvendredi 4 mars 2005StatutMembreDernière intervention12 juin 20127 15 mars 2006 à 18:23
Salut Tibo007,
intéressant développement.
A mes yeux, le meilleur moyen de travailler avec ces données, est de travailler en mémoire, et pas directement sur la base. En mémoire, le meilleur pour travailler avec des matrices est le tableau (ou la collection, mais c'est moins rapide). Si la masse de données est importante, il te faudra inventer un algo de pré-traitement pour classifier tes données (et ne traiter que celles concernées, si tu cherches le plus court chemin entre lille et marseille, en moins d'être en multi-critère avec "éviter les autoroutes", peu de chance que tu passes par toulouse), avant d'appliquer dijkstra.
Suivant comment tu implémenteras l'algo, tu auras besoin de plusieurs tableaux, ou d'un seul, mais contenant des types (par ex: pour contenir le marquage, en plus des données chaînées).
Courage, il n'y a pas de quoi s'ennuyer dans ce domaine!