QuikGraph库介绍

项目地址: https://github.com/KeRNeLith/QuikGraph
API地址: https://kernelith.github.io/QuikGraph/api/index.html

QuikGraph为.NET提供了通用的有向/无向图数据结构和算法。
QuikGraph提供了深度优先搜索、广度优先搜索、A*搜索、最短路径、k最短路径,最大流量、最小生成树等算法。

QuikGraph最初由Jonathan “Peli” de Halleux于2003年创建,并命名为QuickGraph。随后更新为YC.QuickGraph。

这个版本的QuickGraph,改名为QuikGraph,是YC.QuickGraph的一个分支。我尝试使用现代C#开发(.NET Core)清理该库,将其作为一个干净的NuGet包提供。该计划旨在全面清理、修复原始库及其所有非核心部件的问题,并对其进行改进。

  • 创建一个.Net Framework4.7.2框架的项目。
  • 在NuGet上搜索QuikGraph,并安装。
  • 引入命名空间:
  • using QuikGraph.Algorithms.Observers;
    using QuikGraph.Algorithms.ShortestPath;
    using QuikGraph;
     
  • 主要测试代码:
  •         public void DijkstraSimpleGraph()
                // 创建邻接图,使用string类型作为顶点、边的唯一标识
                var graph = new AdjacencyGraph<string, Edge<string>>(true);
                // 添加顶点到图中
                graph.AddVertex("A");
                graph.AddVertex("B");
                graph.AddVertex("D");
                graph
    QuickGraph为.NET提供了通用的有向/无向图数据结构和算法。 QuickGraph带有深度优先搜索,呼吸优先搜索,A *搜索,最短路径,k最短路径,最大流量,最小生成树等算法。 QuickGraph最初由Jonathan“ Peli” de Halleux于2003年创建。 GraphTasks 克隆此仓库。 从lib / Pex安装Pex。 从lib / DotNet.CodeContracts安装CodeContracts。 使用build.cmd进行构建。 使用Visual Studio 2015进行开发。 接下来要去哪里
    QuickGraph 是一个为 .NET 平台设计的通用有向/无向图数据结构和算法库。自 2003 年由 Jonathan "Peli" de Halleux 创建以来,QuickGraph 已经成为处理复杂图问题的首选工具。无论是深度优先搜索、广度优先搜索,还是 A* 搜索、最短路径、k-最短路径、最大流、最小生成树等算法,QuickGraph 都能提供强大的支持。 ## 项目技术分析
    QuickGraph是一个强大的开源库,专为.NET开发者设计,提供了通用的有向和无向图数据结构以及各种经典的图论算法。自2003年由Jonathan "Peli" de Halleux创建以来,该项目经过不断的更新和完善,如今由[@gsvgit](https://github.com/gsvgit)维护,并在持续发展。 ## 2、项目技术分析 QuickGraph的核心特性包括:
    本程序为 C#语言编写的窗体应用程序(DijkstraForRoutePlanning.exe),其中包含了一个类库(Dijkstra.dll),若干控件和相应的文件操作以实现目标功能。 本小组项目基于 Dijkstra 算法,以武汉大学范围(文理学部,工学部,信息学部)为例,设计两种模式—地名输入模式和自由选点模式,并根据输入地名或选择点位自动规划出起点与终点间的最短路径在地图上予以显示,同时显示路径转点和总距离。数据源来自 OpenStreetMap,经过 Arcmap 处理。
    - `src`: 源代码目录,包含所有核心的库代码。 - `QuikGraph`: 核心库,提供图的基本数据结构和算法。 - `QuikGraph.Serialization`: 提供图序列化的相关功能。 - `QuikGraph.Graphviz`: 提供将图转换
    QuickGraph: A 100% C# graph library with Graphviz Support.---不错,不是很懂,因为我的数学不好! http://www.codeproject.com/cs/miscctrl/quickgraph.asp
    QuickGraph 是一个为 .NET 平台提供的通用图数据结构和算法库。它支持有向图和无向图,并提供了多种图算法,如深度优先搜索、广度优先搜索、A* 搜索、最短路径、k-最短路径、最大流、最小生成树等。QuickGraph 最初由 Jonathan "Peli" de Halleux 在 2003 年创建,目前由社区维护。 ## 2. 项目快速启动 ### 2.1 安装 首先,克隆 Qu