69得票3回答
如何在Graphviz中强制设置节点位置(x和y)

我正在尝试强制节点的位置。我有节点的x和y坐标,这也是一个有向图。我可以使用rank=same来处理行(y坐标),但无法弄清楚如何处理列(x坐标)。

68得票4回答
图数据结构:深度优先搜索(DFS)和广度优先搜索(BFS)的区别?

如果遇到图论问题,我们如何知道是需要使用BFS算法还是DFS算法呢?又或者我们何时需要使用DFS算法或BFS算法?它们之间有什么区别和优势呢?

64得票7回答
如何使用最大流算法在图中找到最小割?

我需要找到图中的最小割。我一直在阅读有关流网络的资料,但我所能找到的只是像Ford-Fulkerson、push-relabel等最大流算法。鉴于最大流 - 最小割定理,是否可能使用其中一种算法来使用最大流算法查找图中的最小割?如何操作? 到目前为止,我找到的最佳信息是,如果我找到了“饱和”...

58得票8回答
Dijkstra算法中边的松弛

在图论的背景下,“边的松弛”是什么意思?我在学习狄克斯特拉(Dijkstra)算法以寻找单一源最短路径时遇到了这个问题。

57得票8回答
稀疏图和稠密图的区别是什么?

我了解到用邻接表来表示稀疏图是理想的,用邻接矩阵来表示密集图是理想的。但我希望了解稀疏图和密集图之间的主要区别。

54得票4回答
C#图形绘制库?

我正在寻找一个(免费)库,可以让我绘制CFG(控制流程图)。类似于yFiles,但是免费或最好是开源的?理想情况下,这个库将允许用户浏览图形(并修改它),即图形不仅仅是静态的预先渲染位图。 有什么建议吗? 更新: Glee与提到的QuickGraph库结合使用似乎非常好用。谢谢 更新2: ...

54得票13回答
一个找到稀疏图直径的好算法是什么?

我有一个用邻接表表示的大型、连通、稀疏的图。我想找到距离最远的两个顶点,也就是该图的直径以及实现它的两个顶点。 我对无向和有向两种情况均感兴趣,因为它们适用于不同的应用场景。在有向情况下,我当然关心有向距离(从一个顶点到另一个顶点的最短有向路径)。 是否有比计算所有对之间的最短路径更好的方...

50得票19回答
图表能够比其他方法更好地解决哪些问题?请举出一些良好的例子。

阅读了 Stevey Yegge 的 Get That Job At Google 文章后,我发现这句话很有意思: 每当有人给你一个问题时,想到图形。它们是表示任何关系的最基本和灵活的方式,所以任何有趣的设计问题都有50%的可能涉及图形。在尝试其他解决方案之前,请确保无法考虑使用图形解决它...

50得票19回答
计算将序列排序所需的最小交换次数

我正在处理一个没有相同数字的整数序列的排序问题(不失一般性,假设该序列是1,2,...,n的排列),将其按自然递增顺序(即1,2,...,n)排序。 我考虑直接交换元素(不考虑元素位置;换句话说,对于任意两个元素,交换都是有效的),并用最少的次数进行交换(以下可能是可行的解决方案): 交换...

49得票8回答
找到两个给定节点之间的路径?

假设我有以下连接方式的节点,如何确定给定节点之间存在的路径数量和路径细节?1,2 //node 1 and 2 are connected 2,3 2,5 4,2 5,11 11,12 6,7 5,6 3,6 6,8 8,10 8,9 查找从1到7的路径:答案:找到2条路径,它们分别为1,2,...