Algoritmi din teoria grafurilor
Multe rezultate din teoria grafurilor sunt cunoscute sub forma unor algoritmi celebri.
Prezentam mai jos doi algoritmi binecunoscuti : algoritmul lui Floyd si algoritmul lui Warshall.
Algoritmul lui Floyd
Algoritmul lui Floyd permite calculul matricii drumurilor de cost minim dintr-un graf pornind de la matricea costurilor muchiilor A.
Daca notam A1=A, atunci, pentru k>1 se construieste matricea :
Ak[i,j]=min (Ak-1[i,j], Ak-1[i,k]+Ak-1[k,j])
La fiecare pas k, matricea Ak[i,j] va contine cea mai mica distanta dintre i si j prin noduri care nu depasesc valoarea k.
Se observa ca Ak[i,k]= Ak-1[i,k]
si Ak[k,j]= Ak-1[k,j] si deci se poate
lucra succesiv asupra aceleasi
matrici fara a mai folosi indicii k superiori de
Implementarea in limbajul C
/determinarea matricii drumurilor de cost minim intr-un graf neorientat
#include<stdio.h>
#include<conio.h>
int c[20][20],n,i,j;
void citire_matrice_costuri(int c[20][20],int n)
}
}
void afisare(int c[20][20],int n)
void floyd(int c[20][20])
void main()
Algoritmul lui Warshall
Implementarea in limbajul C
Algoritmul lui Warshall permite calculul matricii existentei drumurilor dintr-un graf pornind de la matricea de adiacenta A.
Daca notam A1=A, atunci, pentru k>1 se construieste matricea :
Ak[i,j]= Ak-1[i,j] or (Ak-1[i,k] and Ak-1[k,j])
La fiecare pas k, matricea Ak[i,j]
va contine valoarea 1 daca exista
un drum de la i la j prin noduri care nu depasesc valoarea k si valoarea o daca un astfel de drum nu exista.. Se
observa ca Ak[i,k]= Ak-1[i,k] si Ak[k,j]=
Ak-1[k,j] si deci se poate lucra succesiv asupra aceleasi matrici fara
a mai folosi indicii k superiori de
/determinarea matricii drumurilor intr-un graf neorientat
#include<stdio.h>
#include<conio.h>
int a[20][20],n,i,j;
void citire_matrice_adiacenta(int a[20][20],int n)
}
}
void afisare(int a[20][20],int n)
void warshall(int a[20][20])
void main()
Politica de confidentialitate |
.com | Copyright ©
2024 - Toate drepturile rezervate. Toate documentele au caracter informativ cu scop educational. |
Personaje din literatura |
Baltagul – caracterizarea personajelor |
Caracterizare Alexandru Lapusneanul |
Caracterizarea lui Gavilescu |
Caracterizarea personajelor negative din basmul |
Tehnica si mecanica |
Cuplaje - definitii. notatii. exemple. repere istorice. |
Actionare macara |
Reprezentarea si cotarea filetelor |
Geografie |
Turismul pe terra |
Vulcanii Și mediul |
Padurile pe terra si industrializarea lemnului |
Termeni si conditii |
Contact |
Creeaza si tu |