0

我想知道我应该使用 Quickgraph 库 (C#) 中的哪些类和函数来找出方向图中的两个任意顶点之间是否存在连接?

我是编程的初学者,尤其是编程算法,所以请问您是否可以为我提供上述问题的示例代码,主要是因为 Quickgraph 库没有很多针对初学者的问题特定教程。特别是

图规格:

  • 导演
  • 不加权(距离并不重要,只是顶点/边之间的连通性)
  • 图形是动态的,因此可以添加/删除或编辑顶点/边。
4

1 回答 1

0

嗯,我还没有测试过,但基本的 DFS/BFS 应该可以解决问题,如下所示:

var tryGetPaths = _graph.TreeBreadthFirstSearch(__source__);
IEnumerable<Edge<YourItemType>> path;
if (tryGetPaths(__target__, out path))
{
    // we have connectivity!
}

那个检查是否存在从目标的任何连接。您可能也想反之亦然地运行该检查。

于 2014-12-16T09:37:26.137 回答