Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
kHo
0 / 0 / 0
Регистрация: 26.09.2013
Сообщений: 14
#1

Алгоритм Флойда - Уоршелла - C++

26.09.2013, 01:46. Просмотров 300. Ответов 0
Метки нет (Все метки)

Скажите верна ли написана функция, выполняющая алгоритм Флойда - Уоршелла?:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
void FU(int A[V][V])
{
int k;
for (i=0; i<V; i++)
{
for (j=0; j<V; j++) if (A[i][j]==0 && i!=j) A[i][j]=INT_MAX;
A[i][i]=0;
}
 
for (k=0; k<V; k++)
for (i=0; i<V; i++)
for (j=0; j<V; j++)
    if (A[i][k]<INT_MAX && A[k][j]<INT_MAX)
        if (A[i][k]+A[k][j]<A[i][j]) A[i][j]=A[i][k]+A[k][j];
 
for (i=0; i<V; i++)
{
for (j=0; j<V; j++)
cout<<A[i][j]<<"\t";
cout<<endl;
}
}
По-моему она не правильно работает с отрицательными весами.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.09.2013, 01:46
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Алгоритм Флойда - Уоршелла (C++):

Алгоритм Флойда–Уоршелла - C++
for (int k=0; k&lt;n; k++) for (int i=0; i&lt;n; i++) for (int j=0; j&lt;n; j++) как сделать так, чтобы алгоритм нахождения кратчайшего...

Алгоритм Флойда - Уоршелла - C++
не получается реализовать алгоритм Флойда-Уоршелла, вроде все должнен выводить, а выводит или нули или вообще ничего, ошибок не выводит не...

Алгоритм Флойда-Уоршелла (результат работы неправильный) - C++
Задание выглядит так: Дан ориентированный взвешенный граф. Найти пару вершин, кратчайшее расстояние от одной из которых до другой...

Не могу найти ошибку в алгоритме Флойда-Уоршелла - C++
Дан ориентированный граф, рёбрам которого приписаны некоторые неотрицательные веса (длины). Найти длину кратчайшего пути из вершины s в...

Восстановление пути по матрице, возвращаемой алгоритмом Флойда - Уоршелла - C++
Делаю, алгоритм флойда-уоршелла, делаю сам на делфи, но исходники с решением моей проблемы (ну по крайней мере я надеюсь, что с решением)...

Алгоритм Уоршелла - C++
#include&lt;stdio.h&gt; #include &lt;iostream&gt; const int V = 4; int i,j; void transitiveClosure(int graph) { int i, j, k; ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.09.2013, 01:46
Привет! Вот еще темы с ответами:

Нахождение кратчайшего пути в графе, алгоритм Уоршелла - C++
Привет всем! алгоритм уоршелла, нужно найти кратчайший путь в графе. ввожу матрицу 0 1 5 1 0 2 5 2 0 работает нормально, все...

Алгоритм Флойда Оршала - C++
Найти наикратчайшее расстояние от каждой до каждой. Задание представляет собой любую матрицу 4*4. Программа на языке C++.

Алгоритм Флойда-Уоршела - C++
Ребят, помогите. На завтра нужно сдать алгоритм флойда. Вроде нашел код, но он не выводит САМО ЗНАЧЕНИЕ кратчайшего пути, а только по каким...

Алгоритм Флойда С++ реализация - C++
Есть такой код класса Помогите, пожалуйста найти по методу Флойда самый короткий путь, он описан в void setstructGraf, но не могу...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru