Question

J'ai quelques difficultés à trouver un bon algorithme pour naviguer dans le graphique suivant.

texte de remplacement http://www.archimedesinc.biz/images/StackOverflow/Tree .jpg

Si un utilisateur choisit " Table 21 " En tant que point de départ, je dois pouvoir obtenir le chemin d'accès à une autre table à partir de cette table de départ.

EX: si l'utilisateur choisit "Tableau 21" commence par ajouter une valeur de "Tableau 8", il est nécessaire de créer le chemin suivant " Tableau 21 - > Tableau 12 - > Tableau 9 - > Tableau 6 - > Tableau 8 ", tous les poids entre les tableaux sont identiques.

Je semble avoir oublié mes compétences en matière de traitement de graphes dirigés et je ne peux pas penser à un bon algorithme. Je ne demande pas de solution, mais juste un coup de pouce dans la bonne direction.

Merci!

Était-ce utile?

La solution

La recherche en largeur d'abord recherchera le chemin le plus court: http://en.wikipedia.org / wiki / Breadth-first_search

Autres conseils

Puisque vous avez dit que les arêtes ont toutes le même poids, Algorithme de Dijkstra ( mon premier choix habituel pour ce genre de chose) va simplement se dégrader en première recherche approfondie donc Je suggère de l'utiliser pour plus de simplicité.

Vous pouvez choisir parmi plusieurs algorithmes pour déterminer le chemin le plus court. QuickGraph est bon dans ce genre de choses.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top