Алгоритм Дейкстра, Детальна інформація

Алгоритм Дейкстра
Тип документу: Курсова
Сторінок: 15
Предмет: Математика
Автор:
Розмір: 51.5
Скачувань: 2446
for (k=0; k < n; k++){ /* Основний цикл по вершинах */

for (i=0; i < n; i++){ /* Цикл по рядках матриці ваг */

for (j=i+1; j < n; j++){ /* Цикл по стовпцях матриці ваг */

if ((QI[i]+QI[j] == 1)&&

(QI[i]*QI[j] == 0)&&

(weigh[i*n+j] != (-1.0))&&

(((QI[i] == 1)&&((L[i]+weigh[i*n+j]) < L[j]))||

((QI[j] == 1)&&((L[j]+weigh[i*n+j]) < L[i])))){

if (QI[i] == 1){

L[j]=L[i]+weigh[i*n+j];

Q[j]=i;

}

else{

L[i]=L[j]+weigh[i*n+j];

Q[i]=j;

}

}

}

}

for (tmp=DBL_MAX,i=0; i < n; i++){

if ((tmp > L[i])&&(QI[i] == 0)){

tmp=L[i];

j=i;

}

}

QI[j]=1;

}

free(QI);

return(0);

}

The online video editor trusted by teams to make professional video in minutes