Uploaded by David Bat

Grafuri-neorientate

advertisement
GRAFURI NEORIENTATE
Definiţie:
Se numeşte graf neorientat, o pereche ordonată de mulţimi G=(X,U), unde:
• X este o mulţime finită şi nevidă de elemente numite vârfuri sau noduri;
• U este o mulţime de perechi neordonate de câte două elemente din X, numite
muchii sau arce.
Exemple din lumea reală:
prieteniile / cunoștințele
orașe cu drumuri între ele
conducte prin care curge apă
Adiacenţă: vârfurile x şi y sunt adiacente dacă determină o muchie.
Incidenţă: două muchii sunt incidente dacă au un vârf comun.
Gradul unui vârf: numărul de muchii incidente la vârful x, notat cu d(x)
vârf izolat, vârful care are gradul 0
vârf terminal, vârful care are gradul 1
Exemple de grafuri
Vârfurile: 1, 2, 3, 4, 5, 6, 7
Muchi: (1,2), (2,4), (2,5), (3,7)
Vârfuri terminale : 1, 3, 7
Vârf izolat: 6
Proprietate: Pentru un graf G=(X,U), cu n vârfuri şi m muchii,
n
d ( x) = 2m , adică suma
∑
x =1
tuturor gradelor vârfurilor este egală cu dublu numărului muchilor.
Într-un graf există un număr par de vârfuri de grad impar
Daca graful G are n vârfuri (n>=2) atunci cel puţin doua vârfuri au acelaşi grad.
Numărul minim de muchii pe care trebuie să le conţină un graf neorientat cu n
noduri ca să nu existe noduri izolate este mmin=[(n+1)/2]
Numărul de grafuri neorientate ce se pot forma cu n vârfuri:
n ( n −1)
Cn2
2
2
=2
Graf parţial: graful obţinut din G=(X,U) prin suprimarea (eliminarea) unor muchii,
mulţimea vârfurilor păstrându-se, notat cu G'=(X,U').
m
Numărul de grafuri parţiale ale unui graf cu m muchii este 2
Subgraf: graful obţinut din G=(X, U) prin eliminarea unor vârfuri şi a muchilor incidente
acestora, notat cu H=(Y,V) unde Y ∈ X, V ⊂ U.
n
Numărul de subgrafuri ale unui graf neorientat cu n noduri este egal cu 2 -1
Pentru graful:
Graf parțial
Graf subgraf
Graf complet: graful cu proprietatea că oricare două vârfuri sunt adiacente. Un graf
complet cu n vârfuri se notează cu Kn şi se referă în general la grafuri neorientate.
Un graf complet Kn cu n vârfuri, are
n(n − 1)
muchii
2
Gradul oricărui vârf al unui graf complet este egal cu n-1
Graful complet are număr maxim de muchii
Graf regulat: graf pentru care toate vârfurile au acelaşi grad.
Graf bipartit: graful G=(X,U) pentru care mulţimea vârfurilor X poate fi partiţionată în
două mulţimi A şi B (A ∪ B=X, A ∩ B= Φ ) şi orice muchie (x,y) are o extremitate în A şi
una în B.
Graf bipartit complet: graful bipartit pentru care orice vârf x din A şi orice vârf y din B,
există muchia (x,y).
Dacă p şi q reprezintă numărul vârfurilor ce aparţin mulţimi A (p=card(A)),
respectiv B (q=card(B)), numărul muchilor unui graf bipartit m= p*q.
Graf complet
Graf bipartite
Graf bipartite complet
Lanţ: o secvenţă de vârfuri L=(v1,v2,...,vk) cu proprietatea că oricare două vârfuri
consecutive sunt adiacente, altfel spus vi∈X şi există muchiile (v1,v2),(v2,v3),...,
(vk-1,vk)ce aparţin lui U.
Lungime lanţ: numărul de muchii din care este format.
Lanţ elementar: lanţul pentru care toate vârfurile sunt distincte.
Lanţ simplu: lanţul pentru care toate muchile sunt distincte.
Ciclu: un lanţ pentru care extremitatea iniţială a lanţului coincide cu extremitatea finală.
Ciclu elementar: un ciclu pentru care, cu excepţia primului şi ultimului, vârfurile sunt
distincte.
Ciclu simplu: un ciclu pentru care, muchile sunt distincte.
Graf ciclic: un graf ce conţine cel puţin un ciclu.
Graf aciclic: un graf ce nu conţine cicluri.
Graf conex: graful neorientat G=(X,U) în care pentru orice pereche de vârfuri (x,y)
există un lanţ care le uneşte.
Componentă conexă: un subgraf al grafului G=(X,U), maximal în raport cu proprietatea
de conexitate (între oricare două vârfuri există lanţ), altfel spus un subgraf al grafului care
este conex.
Graf biconex: un graf conex cu proprietatea că eliminând oricare nod al acestuia, graful
rămâne conex
Numărul maxim de cicluri independente pentru un graf este dat de numărul
ciclomatic Nc=m–n+p, unde p este numărul de componente conexe
Numărul maxim de muchii mmax dintr-un graf neorientat, cu n noduri şi p
componente conexe este mmax=(n-p)(n-p+1)/2.
Pentru un graf neorientat conex, avem un număr de m-n+1 cicluri elementar
Lanţ hamiltonian: un lanţ elementar care conţine toate vârfurile/nodurile grafului.
Ciclu hamiltonian: un ciclu elementar care conţine toate vârfurile/nodurile grafului.
Graf hamiltonian: un graf ce conţine un ciclu hamiltonian.
Teoremă: Dacă G este un graf cu n≥3 vârfuri, astfel încât gradul fiecărui vârf d(x)≥n/2 ,
atunci graful este hamiltonian (condiţie suficientă).
Lanţ eulerian: un lanţ elementar care conţine toate muchiile/arcele grafului.
Ciclu eulerian: un ciclu elementar care conţine toate muchiile/arcele grafului.
Graf eurelian: un graf ce conţine un ciclu eulerian.
Teoremă: Un graf este eulerian dacă şi numai dacă graful este conex şi gradele tuturor
vârfurilor sunt pare (condiţie necesară şi suficientă).
Reprezentarea grafurilor neorientate
Fie graful:
A. Matricea de adiacenţă
(
(
Aij = 1 daca exista muchie între vârful i şi vârful j

(
(
0 daca nu exista muchie între vârful i şi vârful j
0
1

1
A=
1
0

0
1 1 1 0 0
0 0 1 1 0

0 0 1 0 0

1 1 0 0 0
1 0 0 0 0

0 0 0 0 0
matricea de adiacenţă este simetrică faţă de diagonala principală
gradul unui vârf este dat de numărul de 1 de pe linia/coloana respectivă
suma elementelor din matrice
n
∑ A[i][ j ] = 2 ⋅ m
i =1, j =1
B. Lista de adiacenţă (lista vecinilor)
Vârful
1
2
3
4
5
6
Vecinii
2, 3, 4
1, 4, 5
1, 4
1, 2, 3
2
vidă
C. Vector de muchii
Vector de muchii
Vi
(x, y)
1
(1, 2)
2
(1, 3)
3
(1, 4)
4
(2, 4)
Vector de grade
Varf
Grad d[i]
1
3
2
3
3
2
4
3
5
1
D. Matricea drumurilor
(
(
dij = 1 daca exista drum între nodul i şi nodul j

(
(
0 daca nu exista drum între nodul i şi nodul j
6
0
5
(2, 5)
6
(3, 4)
Download