Sunteți pe pagina 1din 5

Calenic Andrada

Fi de lucru grafuri neorientate


Fie graful neorientat:

2 7 9

Se cere : Cte noduri are graful? 9 Care sunt muchiile grafului? (1,2) (2,3) (3,1) (4,5) (5,6) (6,7) (7,5) (4,6) Scriei matricea de adiacen.

011000000 101000000 110000000 000011000 000101100 000110100 000011000 000000000 000000000

Citirea graficelor prin matricea de adiacenta f>>n; for(i=1;i<n;i++) for(j=1;j<=n;j++) f>>a[i][j];

Citirea graficelor prin citirea capetelor muchiilor f>>n for(i=1;i<=n;i++) {f>>x>>y; a[x][y]==1; a[y][x]==1;}

Pentru fiecare nod precizai: gradul acestuia, gradul maxim/minim al grafului, numrul i numele de noduri terminale, numrul de noduri izolate
1

Calenic Andrada

Nod
Gradul nodului Gradul maxim Noduri terminale Noduri izolate

2 -

2 -

2 -

2 -

3 X -

3 X -

2 -

0 X

0 X

Cte muchii trebuie adugate astfel nct graful s devin complet. 28 Dai exemplu de : un lan elementar, lan neelementar, ciclu elementar, ciclu neelementar. Lant elementar: 1 2 3 Lant neelementar: 45675 Ciclu elementar: 1231 Ciclu neelementar: 457564 Cte componente conexe are graful? 3 Cte muchii trebuie adugate pentru ca graful s devin conex? 3 78 69 14

Calenic Andrada

Fi de lucru grafuri orientate


Fie graful orientat:

2 9 8

Se cere : Cte noduri are graful? 9 Care sunt muchiile grafului? (1,2) (1,3) (2,3) (4,5) (5,6) (5,9) (6,4) (9,6)
Algoritmul pentru citirea grafului prin matricea de adiacen Algoritmul pentru citirea grafului prin Capetele muchiilor

For(i=1;i<=n;i++) For(i=1;i<=m;i++) Cin>>a[i][j]

Cin>>n>>m; For(i=1;i<n;i++) Cin>>x>>y; A[x][y]=1 For(i=1;i<n;i++) A[x]][y]=0;

Scriei matricea de adiacen.

Calenic Andrada

Nr nod Grad intern Grad extern

1 2 3 4 5 6 7 8 9 0 1 2 1 1 2 0 0 1 2 1 0 1 2 1 0 0 1

Pentru fiecare nod precizai: Vectorul de grade:

Scriei matricea de adiacen 1 2 3 4 5 6 7 8 9 1 0 0 0 0 0 0 0 0 0 2 1 0 0 0 0 0 0 0 0 3 1 1 0 0 0 0 0 0 0 4 0 0 0 0 0 1 0 0 0 5 0 0 0 1 0 0 0 0 0 6 0 0 0 0 1 0 0 0 1 7 0 0 0 0 0 0 0 0 0 8 0 0 0 0 0 0 0 0 0 9 0 0 0 0 1 0 0 0 0

gradul intern maxim/minim 2 / 0 gradul extern maxim/minim al grafului 2 / 1 numrul i numele de noduri terminale, 0 numrul de noduri izolate 2
Algoritmul pentru ncrcarea vectorului de grade interne

For(i=1;i<=n;i++) {d+=0; For(i=1;i<=n;i++;) {d+=a[i][j]; cout<<gradului<<i<<es te<<d;} Se parcurge matricea de


adiacenta pe coloane si numarul valorilor de 1 de pe coloana respectiva reprezinta gradul intern al nodului j

Algoritmul pentru aflarea gradului intern maxim, dup ncrcarea vectorului de grade For(i=1;i<=n;i++) {x=0; For(j=1;j<=n;j++) If(a[i][j]==1)x++; Ge[i]=x;

Algoritmul pentru aflarea gradului intern minim, dup ncrcarea vectorului de grade Min=ge[1] For(i=2;i<=n;i++) If(ge[i])<min) min= ge[i];

Calenic Andrada

Algoritmul pentru ncrcarea vectorului de grade externe For(i=1; i<=n; i++) {de=0; For(j=1; j<=n; j++) de+=a[i][j]; v[i]=de;}

Algoritmul pentru aflarea gradului externe maxim, dup ncrcarea vectorului de grade Max=0; For(i=1; i<=n; i++) If(de[i]>max) max=de[i]; Cout<<gradul extern maxim este<<max;

Algoritmul pentru aflarea gradului externe minim, dup ncrcarea vectorului de grade min=n; For(i=1; i<=n; i++) If(de[i]<min) min=de[i]; Cout<<gradul intern minim este<<min;

Cte muchii trebuie adugate astfel nct graful s devin complet. 28 Dai exemplu de : un lan elementar 1,2,3 lan neelementar 5 4 6 5 9 ciclu elementar 5 4 6 9 5 ciclu neelementar 5 6 4 5 9 drum elementar 5 9 4 6 drum neelemnetar 5 6 4 5 9 circuit4 5 6 4 Cte componente conexe are graful? 4 Cte muchii trebuie adugate pentru ca graful s devin conex? 3

S-ar putea să vă placă și