|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
14.03.2016, 14:15 | #1 |
Форумчанин
Регистрация: 22.05.2013
Сообщений: 245
|
Алгоритм Форда
Здравствуйте, помогите пожалуйста с задачей.
Дан граф. Каждой дуге приписано некоторое число (вес) cij.Найти все кратчайшие пути между любой парой вершин xi,xj, где длина пути есть суммарный вес дуг, образующих этот путь. d(xi,xj) -расстояние между вершинами xi,xj. Алгоритм работает так: выбираем одну из вершин в качестве начальной i=1. И находим все кратчайшие расстояния от начальной вершины до всех остальных. Затем в качестве начальной берем следующую вершину i=2 и так же находим все кратчайшие расстояния до остальных вершин. И так далее до i=n. d(x1,xj) = 0, если j=1 и w, если j!= 1 w>>sum(cij) Если уже известны значения на итерации к, то расстояние на к+1 итерации = min {расстояние на к-той итерации+cij} Повторяем эти шаги, пока две соседние итерации не дадут одинаковые значения. Код:
Ответ вывести в виде таблицы. Здесь пока выводится только расстояние из одной дуги. Еще нужно найти сам путь кратчайшей длины для любой пары xi, xj. В файле input.txt вводим например: 13 15 (это n,m) 1 4 2 3 3 2 4 3 -1 (из вершины 0 можно попасть в вершину 1 по дуге с весом 4 и т.д; -1 конец строки) 2 1 -1 5 4 -1 4 1 -1 -1 6 3 3 2 -1 7 4 10 2 -1 8 2 9 3 -1 -1 -1 11 3 12 1 -1 -1 -1 |
19.03.2016, 17:32 | #2 |
Форумчанин
Регистрация: 22.05.2013
Сообщений: 245
|
нашла вот такой вариант:
Код:
В этом случае выводится только число (кратчайший путь от начальной вершины до конечной), а как сделать,чтобы сразу по всем вершинам выводилось в виде таблицы? |
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
алгоритм форда-фалкерсона | qpuTuJlb | Общие вопросы Delphi | 0 | 21.06.2013 19:58 |
алгоритм Форда-Беллмана [язык - C] | dixonich | Помощь студентам | 0 | 13.05.2012 14:37 |
алгоритм Форда-Фалкерсона | goldlider | Общие вопросы Delphi | 10 | 20.04.2010 17:41 |
Алгоритм Форда-Беллмана | k1r1ch | Помощь студентам | 2 | 27.12.2009 20:10 |
алгоритм Форда-Беллмана | Foky | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 19.10.2008 17:27 |