ВУЗ:
Составители:
Рубрика:
А.А. Андрианова, Л.Н. Исмагилов, Т.М. Мухтарова .
пути из j в i.
// определение функции построения всех кратчайших
// путей в графе с помощью алгоритма Флойда
void Floyd(Graph2 g, int**& H, int**& T)
{
int i,k,j;
// выделение памяти под матрицу длин кратчайших путей T
// и матрицу путей H
T=new int*[g.n];
H=new int*[g.n];
for(i=0;i < g.n;i++)
{
T[i]=new int[g.n];
H[i]=new int[g.n];
}
// начальная инициализация матриц T и H согласно
// матрице смежности графа
for(i=0;i < g.n;i++)
for(j=0;j< g.n;j++)
{
T[i][j]=g.a[i][j];
if(g.a[i][j]==MAX_INT) H[i][j]=0;
else H[i][j]=j+1;
}
for(i=0;i< g.n;i++)
{
for(j=0;j< g.n;j++)
for(k=0;k< g.n;k++)
// если можно проехать из j-ой вершины в
// k-ую через i-ую более коротким путем,
// меняем длину T[j][k] и путь
if(i!=j && i!=k && T [j][i]!=MAX_INT &&
T[i][k]!= MAX_INT &&
T[j][k]>T[j][i]+T[i][k])
{
H[j][k]=H[j][i];
T[j][k]=T[j][i]+T[i][k];
}
}
}
Задача 6. Дан взвешенный граф в виде матрицы смежности. Найти диа-
метр графа, т.е. максимальное расстояние между всевозможными парами его
вершин.
124
А.А. Андрианова, Л.Н. Исмагилов, Т.М. Мухтарова . пути из j в i. // определение функции построения всех кратчайших // путей в графе с помощью алгоритма Флойда void Floyd(Graph2 g, int**& H, int**& T) { int i,k,j; // выделение памяти под матрицу длин кратчайших путей T // и матрицу путей H T=new int*[g.n]; H=new int*[g.n]; for(i=0;i < g.n;i++) { T[i]=new int[g.n]; H[i]=new int[g.n]; } // начальная инициализация матриц T и H согласно // матрице смежности графа for(i=0;i < g.n;i++) for(j=0;j< g.n;j++) { T[i][j]=g.a[i][j]; if(g.a[i][j]==MAX_INT) H[i][j]=0; else H[i][j]=j+1; } for(i=0;i< g.n;i++) { for(j=0;j< g.n;j++) for(k=0;k< g.n;k++) // если можно проехать из j-ой вершины в // k-ую через i-ую более коротким путем, // меняем длину T[j][k] и путь if(i!=j && i!=k && T [j][i]!=MAX_INT && T[i][k]!= MAX_INT && T[j][k]>T[j][i]+T[i][k]) { H[j][k]=H[j][i]; T[j][k]=T[j][i]+T[i][k]; } } } Задача 6. Дан взвешенный граф в виде матрицы смежности. Найти диа- метр графа, т.е. максимальное расстояние между всевозможными парами его вершин. 124
Страницы
- « первая
- ‹ предыдущая
- …
- 122
- 123
- 124
- 125
- 126
- …
- следующая ›
- последняя »