Я пытаюсь реализовать Ford–Fulkerson algorithm в java, и у меня возникли проблемы, когда мой код становится неприятным и излишне сложным.Что такое интеллектуальный способ создания графического объекта для алгоритма Форда-Фулкерсона?
То, что я хочу, чтобы иметь:
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 A
Node B
и max flow
/current flow
. И если я это сделаю, как мне подключить узлы? (как и в случае, если каждый узел имеет Connection
и не будет лишним? Я немного застрял. Редактировать Или я должен просто иметь Connections
и реализовать какую-то функцию поиска для привязки связующих элементов. думать, чтобы быть честным.
PS
Этот класс в основном только по математике часть, поэтому я никогда не реализован график, а также не покрывает этот курс, так что спасибо за помощь новичку :) (если это не закрывается, как 5 минут).
Взгляните на библиотеку [JUNG] (http://jung.sourceforge.net/), которую можно использовать для моделирования узлов и соединений, а также визуализации – GrahamA
Это домашнее задание, у меня очень плотный график на это, не могли бы вы указать мне на что-то в API? – Kalec