10得票2回答
图值传播算法

我有一个有向图 (N, A),其中每个节点 n[i] 都有一个值 v[i] 和一个阈值 t[i]。对于每个箭头 (n[i], n[j]),都满足不等式关系 v[i] <= v[j]。我需要有效地实现以下操作: increaseThreshold(i, x):将 t[i] 的值设为 m...

9得票2回答
在Haskell中保存图表

我可以轻松地为有向图中的节点定义数据类型。 data Node = Node String [Node] derving (Show, Read) 我可以使用show函数将图形保存到文件中,然后使用read函数恢复它。但是,如果有一个循环,show函数将无法处理。是否有一种简单的方法来保...

7得票7回答
查找具有最大最小权重的路径

我正在尝试设计一种算法,以寻找有向图上的路径。这不是传统的路径,我找不到已经完成此任务的任何参考资料。 我希望找到最小权重最大的路径。 例如,如果有两条路径,它们的权重分别为10->1->10和2->2->2,则第二条路径被认为比第一条更好,因为最小权重(2)大于第一条路径的最小权重(1)...

46得票4回答
图形序列化

我正在寻找一个简单的算法来“序列化”有向图。特别是我有一组具有执行顺序相互依赖性的文件,并且我想在编译时找到正确的顺序。我知道这必须是一个相当普遍的事情 - 编译器一直在做 - 但是今天我的谷歌搜索能力很弱。这个“go-to”算法是什么?

40得票5回答
如何检测向有向图中添加边是否会导致出现环?

我发现了等待图(wait-for graphs),我想知道,是否有有效的算法可以检测在有向图中添加一条边是否会导致出现环路? 所讨论的图是可变的(可以添加或删除节点和边)。我们只需要知道是否存在环路即可(以防止添加一个冒犯边)。 当然,可以使用计算强连通分量(例如Tarjan算法)的算法来...

23得票7回答
实现基于节点的图形界面?

我希望实现一个节点界面,基本上是一个DAG,其中每个节点对其输入连接执行操作,并输出某些内容(您可以将其连接到另一个节点)。 一些示例应用: 苹果公司的 "Shake" - 截图 The Foundry 公司的 "Nuke" - 截图 MindNode - 截图 vvvv - 截图集 Q...

27得票6回答
如何检测有向图是否有环?

如何检测有向图是否包含环?我考虑使用宽度优先搜索,但不确定。您有什么想法吗?

8得票1回答
如何使用Jackson的@JsonIdentityInfo来反序列化有向图?

我希望使用Jackson 2.3.3来进行有向图的反序列化/序列化。我想到的结构大致如下: public Class Graph { private final Set<Node> nodes; public Graph(Set<Node> nodes...

8得票3回答
使用DFS计算有向图中的环数

我希望能够计算有向图中可用的定向循环总数(仅需要计数)。 您可以假设给定图形为邻接矩阵。 我知道 DFS,但是无法为此问题编写可行的算法。 请提供一些使用 DFS 的伪代码。

8得票4回答
合并一些已排序但未知顺序的列表

我有一些包含可变数量元素的列表。每个列表都已排序,但排序算法是未知的。我想将这些列表合并成一个大列表,该列表按相同顺序包含所有列表,且不包含重复项。 示例输入: 1. XS,M,L,XL 2. S,M,XXL 3. XXS,XS,S,L 期望的结果: - XXS,XS,S,M,L,XL...