问题标签 [quickgraph]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
89 浏览

c# - 高效搜索没有先行者的通用对象

我有一个genObjectList通用对象和一个openList仍然需要使用的通用对象。一些通用对象相互依赖。因此,只能使用所有前辈都已使用的通用对象。我使用的实现如下:

即使仅包含 300 个条目,查找 的部分candidateList似乎也非常低效。genObjectList

我正在寻找更好的实现来实现相同的行为。有任何想法吗?

编辑:澄清误导性使用Task:问题不是关于c#任务及其方法,而是关于具有优先约束的通用对象以及如何处理它们。我编辑了帖子以明确这一点。

Edit2:使用拓扑排序的建议是正确的方法。但是我正在寻找某事。这可以描述为“非确定性拓扑排序”。例如,深度优先搜索实现QuickGraph总是得到相同的拓扑排序,即使它不是唯一的。我正在寻找一种使用随机数作为决胜局的实现,因此有机会创建所有拓扑排序。

0 投票
1 回答
5063 浏览

c# - C# 使用 QuickGraph 和 GraphViz 绘制图形

我希望我不会显得懒惰,但我真的很难使用 QuickGraph 和 GraphViz 绘制图表,因为我似乎无法在网上找到太多文档。我对 C# 接口很陌生,所以我发现它们也很混乱。谁能给我一个简单的工作示例,或者指导我一些好的示例和文档?

谢谢你。

0 投票
1 回答
442 浏览

unity3d - Unity 使用快速图形库找不到函数定义

我在我的统一项目中使用快速图库。我使用 Visual Studio 作为我的编辑器,它没有给这一行错误,但是当我尝试用统一编译时,它说它找不到为图形定义的函数 ShortestPathsDijkstra。这条线绝对是正确的,因为我从快速图形文档中得到了它。

0 投票
3 回答
746 浏览

c# - 扩展方法不起作用(快速图形序列化)

GraphMLExtensions.SerializeToGraphML<TVertex, TEdge, TGraph>(TGraph, XmlWriter)错误:无法从用法中推断方法的类型参数 。

该代码是从 QuickGraph 的文档中复制的。但是,当我明确编写它时,它可以工作:

编辑:我看到了一些相关的问题,但它们对我来说太高级了。我只是担心使用它。我做错了什么还是文档?

0 投票
1 回答
256 浏览

c# - 我的最大匹配边集合返回为空(在 C# 中使用 QuickGraph)

我正在尝试使用 QuickGraph 在我的二分图中找到最大匹配,但是他们返回给我的 MatchedEdges 集合是空的。我知道有匹配项,因为我用 K7,7(完全二分)图对其进行了测试。所以,我对自己做错了什么感到困惑。

这是我的代码(为了便于阅读,我编写了 Vertex 和 Edge 来代替我的实际类):

maxMatch.MatchedEdges.Count 总是返回为 0。这就是问题所在。

我希望有一个简单的解决方案来解决这个问题,比如我不应该使用 new AdjacencyGraph() 或其他东西,但我也愿意接受关于在二分图中找到最大匹配的其他方法的建议。

谢谢!

顺便说一句,这个链接是我用来写东西的: Maximum Bipartite Matching in QuickGraph

0 投票
0 回答
313 浏览

c# - QuickGraph 查找具有特定距离的顶点

在 QuickGraph 中 - 是否有一种算法可以找到距根顶点(或任何其他顶点)特定距离的所有顶点?

例如查找与根顶点的距离为 2 的所有顶点。

0 投票
1 回答
1184 浏览

c# - 在快速图中查找两个顶点之间的所有可能路径

我想构建一个无向二分图,其中一条边将用户与其兴趣联系起来。该图看起来像这个模型,其中用户由绿色圆圈表示,兴趣由红色圆圈表示。

兴趣图

为了找到两个用户之间的相似性,我尝试找到第一个用户和第二个用户之间的所有可能路径。例如,用户 0 和用户 4 之间有两种可能的路径(0 --> 6 --> 2 --> 8 --> 4 和 0 --> 5 --> 1 --> 7 --> 3 --> 8 --> 4)。这是我到目前为止所尝试的:

上面的代码只打印一次,但应该打印两次,因为有两条路径。

我还尝试实施答案中给出的解决方案。但是,这会打印出一种可能的路径。那么,如何使用QuickGraph打印两个顶点之间的所有可能路径?

0 投票
1 回答
480 浏览

c# - Quickgraph.Graphviz 是否需要安装 graphviz 才能绘制图形图像?

我能够通过命令行使用graphviz(dot.exe)生成图形文件。需要使用 Quickgraph.Graphviz 生成图形,无需安装。可能吗?

0 投票
1 回答
161 浏览

c# - 选定顶点中的路由算法

我想选择我必须通过的起点、终点和顶点,算法应该找到最短的路由路径。我有一个存储 Routes Id|Name|StoreA|StoreB|Kilometers 的表,其中 StoreA 和 StoreB 是 Store 表中的 FK。我仅以一种方式保存数据。示例:在表 Routes 1|Lidl-Kaufland|1|2|157 中,而不是返回,因为距离相同。我不确定我是使用 QuickGraph 库中的 BidirectionalGraph 还是 UndirectedGraph。

例如这个道路网络:1 : http://i.stack.imgur.com/mxcWe.png 首先我选择这 4 个顶点,然后我选择起点和终点。我使用 QuickGraph 3.6,这里最大的问题是我应该使用什么图,是否有适合我目的的算法?谢谢大家,我希望我解释了一切必要的回答我。

0 投票
2 回答
2362 浏览

c# - 从 QuickGraph 图中获取连接的组件

我是图论的新手。

我已经使用QuickGraph 库创建了一个邻接图,最终,我希望从图中获得连接的组件。

输出undirGraph.Edges

并从undirGraph.Vertices

符合预期。

无向图创建成功,但现在我卡住了。从这里开始,我不知道如何获取图形的连通分量,或者坦率地说,我是否使用正确的图形结构。

我本来希望x在图中包含组件,但x;;FSI 中的输出如下所示:

FSI 中 x 的输出

示例中的值tuple list表示数据库中BillToShipTo客户 ID 值。

QuickGraph 库中的文档很少,特别是对于那些试图“即时学习”的人。

这个问题取代了我之前发布的问题。我曾考虑修改我之前的问题,但由于这是一个完全独立的问题,因此决定保留原样。