为Ford-Fulkerson算法创建类似对象的图形的智能方法是什么?

时间:2013-12-12 12:25:01

标签: java ford-fulkerson

我正在尝试在java中实现Ford–Fulkerson algorithm并且我遇到了一些问题,我的代码变得令人讨厌且不必要地复杂。

我想要的是:

class Node:
    private int id
    private static int idAssigner // I may move this to another class
    // etc

class flowNetwork
    private Node source  // begin point
    private Node sink    // end point

现在我想按照类似于(双向)树的方式对节点进行分组。每个节点都有一个列表,列出了它所连接的所有节点。

我的问题是:我怎样才能给这个连接一个值(最大流量,当前流量)?

我应该创建另一个Connection Node ANode B / max flow的课程current flow。如果我这样做,我应该如何连接节点? (因为每个节点都应该有一个Connection并且不会多余吗?我有点卡住了。 编辑或者我应该只有Connections并实现某种搜索功能来表示链接元素。说实话,这就是我所能想到的。

P.S。

这个课程主要只是数学部分,所以我从来没有实现过图表,课程也没有这个,所以谢谢你帮助一个新手:)(如果没有在5分钟内关闭的话)

1 个答案:

答案 0 :(得分:-1)

我认为,您可以在每个节点中使用链接节点的映射。使用节点密钥和链接信息作为值。

这不是一个快速的解决方案,但它很简单。

更快的是拥有一个矩阵,其中的元素是一个链接对象,包含所有链接信息。行和列将是节点索引。

相关问题