Existe-t-il une structure de données graphique implémentée pour C #?

J’ai essayé de trouver une structure de données de graphes à réutiliser en C # sans aucun succès. Bien sûr, je peux emprunter des livres de structure de données, mais je veux que ce soit plus pratique sur le plan commercial (?). J’aimerais également que vous me disiez quel est le meilleur moyen de mettre en œuvre un graphique. Merci

QuickGraph

QuickGraph est une bibliothèque de graphes pour .NET inspirée de Boost Graph Library.

QuickGraph fournit des infrastructures de données et des algorithmes de graphes génériques dirigés / non dirigés pour .Net 2.0 et versions ultérieures. QuickGraph est livré avec des algorithmes tels que recherche de profondeur d’abord, recherche de souffle d’abord, recherche A *, chemin le plus court, k-chemin le plus court, débit maximal, arbre couvrant minimal, ancêtres les moins communs, etc. rendre les graphes, la sérialisation en GraphML, etc …


Il existe plusieurs façons de créer des graphiques. La bibliothèque de graphes C ++ Boost (BGL) serait votre meilleure référence. Il implémente à la fois les graphes d’adjacency-list, d’adjacency-masortingx et de list-edge. Regardez ici pour plus de détails.

Il existe en fait un article assez ancien dans MSDN qui couvre la création de graphiques en C #, Examen approfondi des structures de données en utilisant C # 2.0 . Malgré son âge, il répond toujours à votre question tant que vous ne craignez pas de créer vos propres classes de graphes.