Documente Academic
Documente Profesional
Documente Cultură
GRAFURILOR
MATRICEA DE ADIACENTA
REPREZENTAREA GRAFURILOR
Exista mai multe moduri de reprezentare la nivel logic a unui graf.
Aceste reprezentari pot fi folosite in algoritmii care prelucreaza
grafuri.
Printre modurile de reprezentare a unui graf se numara:
1, dacă xi , x j U
aij
0, altfel
0 1 1 1 1
1 0 1 1 1
1 1 0 1 0
1 1 1 0 0
1 1 0 0 0
Exemplu
Graf orientat
G=(X,U)
X={1,2,3,4,5} U={[1,2],[1,5],[2,1],[2,3],[3,1],[3,4],[5,2]}
0 1 0 0 1
1 0 1 0 0
1 0 0 1 0
0 0 0 0 0
0 1 0 0 0
IMPLEMENTAREA GRAF NEORIENTAT
int a[10][10],n,m;
void scrie()
{int i,j;
cout<<n<<endl;
for(i=1;i<=n;i++)
{for(j=1;j<=n;j++)
cout<<a[i][j]<<" ";
cout<<endl;}}
void main()
{int i,j,k;
cout<<"Numar de noduri:"; cin>>n;
cout<<"Numar de muchii:"; cin>>m;
for(k=1;k<=m;k++)
{cout<<"Primul nod al muchiei:"; cin>>i;
cout<<"Al doilea nod al muchiei:"; cin>>j;
a[i][j]=1; a[j][i]=1;}
scrie();}
IMPLEMENTAREA GRAF ORIENTAT
int a[10][10],n,m;
void scrie()
{int i,j;
cout<<n<<endl;
for(i=1;i<=n;i++)
{for(j=1;j<=n;j++)
cout<<a[i][j]<<" ";
cout<<endl;}}
void main()
{int i,j,k;
cout<<"Numar de noduri:"; cin>>n;
cout<<"Numar de arce:"; cin>>m;
for(k=1;k<=m;k++)
{cout<<“Nodul initial al arcului:"; cin>>i;
cout<<“Nodul final al arcului:"; cin>>j;
a[i][j]=1; }
scrie();}