Sunteți pe pagina 1din 148

SILVIU BẬRZĂ LUCIANA MARIA MOROGAN

ALGORITMICA GRAFURILOR

© Editura FundaŃiei România de Mâine, 2008 Editură acreditată de Ministerul EducaŃiei şi Cercetării prin Consiliul NaŃional al Cercetării ŞtiinŃifice din ÎnvăŃământul Superior.

Descrierea CIP a Bibliotecii NaŃionale a României BẬRZĂ, SILVIU Algoritmica grafurilor / Silviu Bârză, `Luciana Maria Morogan – Bucureşti: Editura FundaŃiei România de Mâine, 2008 148p.;23,5 cm Bibliogr. ISBN 978-973-163-147-9

I. Morogan, Luciana Maria

004.421.2.519.17(075.35)

Reproducerea integrală sau fragmentară, prin orice formă şi prin mijloace tehnice, este strict interzisă şi se pedepseşte conform legii.

Răspunderea pentru conŃinutul şi originalitatea textului revine exclusiv autorului/autorilor

UNIVERSITATEA SPIRU HARET FACULTATEA DE MATEMATICĂ INFORMATICĂ

SILVIU BẬRZĂ LUCIANA MARIA MOROGAN

ALGORITMICA GRAFURILOR

EDITURA FUNDAłIEI ROMÂNIA DE MÂINE Bucureşti, 2008

-

CUPRINS

Introducere ………………………………………………………

7

Capitolul I. INTRODUCERE ÎN TEORIA GRAFURILOR

9

1.1. Grafuri neorientate ………………….…………………………

9

1.2. Grafuri orientate ………………………. ……………………………

17

Capitolul II. TIPURI PARTICULARE DE GRAFURI

………

25

2.1. Grafuri conexe ………… ……………………………………………

27

2.2. Grafuri complementare şi izomorfe …………………………………

34

2.3. Grafuri ciclice ……………………………… ………………………

37

Capitolul III. REPREZENTAREA GRAFURILOR ……………

46

3.1. Reprezentare grafuri neorientate …………………………………….

46

3.2. Matrici asociate grafurilor orientate ………………………………

54

Capitolul IV. ARBORI

………………………………………….

62

4.1. Definire şi proprietăŃi …………………………………………

62

4.2. Arbori parŃiali ……………………………………………

66

4.3. Algoritmul lui Kruskal ………………………………………

71

4.4. ArborescenŃe ………………………………………………

74

Capitolul V. GRAFURI HAMILTONIENE ŞI EULERIENE

81

5.1. Grafuri Hamiltoniene ………………………………………………

81

5.2. Grafuri Euleriene …………………………………………………….

83

Capitolul VI. ALGORITMI PENTRU DRUMURI ÎN GRAFURI ORIENTATE …………………………

88

6.1. Algoritmi de calcul direct …………………………………………

88

6.2. Algoritmul Wharshal pentru drumuri minime în grafuri orientate ….

94

6.3. Algoritmul lui Dantzig pentru drumuri minime de extremitate iniŃială dată ………………………………………………………….

98

6.4. Algoritmul Bellman-Kalaba pentru drumuri minime de extremitate finală dată ………………………………………

100

6.5. Algoritmii lui Ford şi Dijkstra pentru drumuri minime de extremităŃi date …………………………………………

105

Capitolul VII. ALGORITMI PENTRU GRAFURI HAMILTONIENE ŞI EULERIENE …………

112

7.1. Algoritmul lui Foulkes pentru drumuri hamiltoniene ………

112

7.2. Teorema lui Chen ……………………………………………………

115

7.3. Algoritmul înmulŃirii latine …………………………………

119

7.4. Algoritmul lui Fleury pentru drumuri euleriene …………………….

121

7.5. Algoritmul lui Hierholzer pentru drumuri euleriene ………………

124

5

Capitolul VIII. FLUX MAXIM ÎN REłELE DE TRANSPORT

126

8.1. ConsideraŃii generale ………………………………………………

126

8.2. Algoritmul Ford-Fulkerson …………………………………

129

8.3. Exemple ……………………………………………………………

130

Capitolul IX. REłELE DE PROGRAMARE A ACTIVITĂłILOR ………………………………

136

9.1. Graful arc/activitate, metoda drumului critic ……………………….

137

9.2. Graful vârf/activitate, metoda potenŃialului …………………………

144

Bibliografie……………………………………………………………….

148

6

INTRODUCERE

Prezentul material acoperă programa cursului de Algoritmica grafurilor şi a fost redactată pornind de la dorinŃele autorilor de a prezenta şi a exemplifica cât mai multe elemente ce Ńin de algoritmi de determinare pornind de la teoria grafurîlor.

Sunt prezentate rezultate de bază din teoria grafurilor, atât în domeniul orientat cât şi neorientat şi cei mai importanŃi algoritmi pentru rezolvarea problemelor de grafuri. Gruparea materialelor s-a realizat pe baza noŃiunilor manipulate.

Cartea cuprinde o largă exemplificare a noŃiunilor prezentate din punct de vedere teoretic şi asupra modului de aplicare a algoritmilor descrişi.

Autorii

7

8

I. INTRODUCERE ÎN TEORIA GRAFURILOR

1.1. Grafuri neorientate

DefiniŃie. Fie

X

o mulŃime finită şi nevidă şi

U

{{

x

, y

}

x

,

y

X

} .

Numim graf (sau graf neorientat) perechea G = ( X ,U ) . Elemente din mulŃimea

X se numesc noduri sau vârfuri, iar elementele din mulŃimea U poartă numele

de muchii ale grafului.

Un graf se reprezintă grafic printr-o mulŃime de puncte corespunzătoare vârfurilor grafului şi o mulŃime de segmente corespunzătoare muchiilor. Dacă pentru un graf există o reprezentare în care să nu existe două segmente care să se intersecteze, atunci spunem că graful reprezentat este un graf planar.

Exemplul 1. Fie G = ( X ,U ) , unde X = {1,2,3, 4,5,6,7} şi

U = {{1,2},{1,3},{2,4},{2,5},{3,4},{4,5},{4,6},{5,6},{6,7}}

Am definit un graf neorientat. Acest graf poate avea reprezentarea grafică:

1 2 3 5 4 7 6
1 2
3
5
4
7 6

şi cum în această reprezentare nu există muchii care să se intersecteze, rezultă că avem un graf planar.

╬ Pornind de la definiŃie observăm că dacă X are n elemente, atunci U are

cel mult

numărul de elemente ale

mulŃimii.

C

Dacă

n

elemente.

A

2

este o mulŃime, vom nota prin

A

9

DefiniŃie. Fie G = ( X ,U ) un graf şi x X

un nod fixat. Prin gradul

nodului x înŃelegem numărul muchiilor incidente lui x şi notăm acest număr cu d (x) . Dacă d (x) = 1 spunem că x este nod terminal. Dacă d (x) = 0 spunem

x este nod izolat.

Exemplul 2. Pentru graful specificat în exemplul 1 gradele vârfurilor sunt

cele indicate în următorul tabel.

x

1 2

3

4

5

6

7

d (x)

2 3

2

4

3

3

1

După cum se poate vedea în acest tabel, graful nu are vârfuri izolate şi nodul 7 este nod terminal

 

PropoziŃia

1.

Fie

G = ( X ,U )

un

graf

în

care

U

= m .

Atunci

x

X

d

(

x

)

=

2

m

.

DemonstraŃie. Dacă {x, y}U , atunci intervine o contribuŃie unitară atât

în d (x) , cât şi în d ( y) . Astfel, dacă se elimină muchia, obŃinând graful

G′ =

d( y) = d ( y) 1 şi pentru orice z X \{x, y}, d

(

X ,U \

{{

x, y

}})

, atunci

în

G

vom

(z)

avea

=

d

(z)

Pentru graful G vom avea

d

(

x

)

+

d

(

y

)

+

 

d

 

z

X

\

{

x

,

y

}

z

X

d

(

z

)

=

(

)

z

)

=

d

(

x

)

1

− +

d

(

y

)

1

− +

z

=

2

m

2

− =

2

(

m

1

)

=

2

X

\

{

x

,

y

}

d

(

z

=

U

\

{{

x

,

y

}}

=

z

X

d

(

z

)

d(x) = d (x) 1,

.

− =

2

.

avem

Deoarece într-un graf

d (z) = 0

pentru orice

G

0

=

(

X ,

)

, în care toate vârfurile sunt izolate

,

z X , putem scrie

0

=

d

(

z

)

=

2

0

=

2

z

X

iterând relaŃia de mai sus, demonstrăm egalitatea dată în anunŃ.

Exemplul 3. Pentru graful dat în exemplul 1, folosind gradele vârfurilor date în tabelul din exemplul 2 avem

10

x

X

d

(

x

Pe de altă parte

)

=

U

7

x

= 1

d

=

9

(

x

)

=

2

+ +

3

2

+

4

+

3

+

3

+ =

1

18

.

şi astfel se verifică relaŃia din propoziŃia 1.

PropoziŃia 2. Pentru orice graf G = ( X ,U ) , numărul vârfurilor de grad

impar este par. DemonstraŃie. Prin absurd considerăm că numărul de vârfuri cu grad

impar este impar. Fie

şi

X = X

1

X

2

,

unde

X

1

=

{

x

X d

(

)

x impar

}

X

2

=

{ x

d

1

X

d

(

x

)

par

=

x

X

1

d

(

x

)

} . În mod evident

este număr impar ca sumă impară de numere impare.

X 1

X

2

=∅

d

2

=

x

X

2

d

(

x

)

este număr par ca sumă de numere pare.

Deoarece

X 1

X

2

= , rezultă că

d

x

X

(

x

)

=

d

1

+

d

2

şi astfel

d

x

X

(

x

)

este număr impar ca sumă între un număr par şi unul impar. Dar din propoziŃia 1

avem

d

(

x

)

=

2

U

, deci este număr par. ContradicŃie.

x

X

Exemplul 4. Pentru graful neorientat din exemplul 1, nodurile cu gradul impar sunt 2, 5, 6 şi 7 şi astfel numărul lor este 4, deci număr par. Astfel se verifică practic afirmaŃia făcută în propoziŃia 2.

DefiniŃie. Fie G = ( X ,U ) un graf. Numim graf parŃial al lui G, graful

G ′ =

(X,V )

, unde V U .

Exemplul 5. Fie graful

G = ( X ,U ) , unde

X = {1,2,3, 4,5,6,7} este

mulŃimea de vârfuri, iar mulŃimea muchiilor este

U = {{1,2},{1,3},{2,3},{2, 4},{3,6},{3,7},{4,5},{5,6},{5,7}} .

Considerăm graful G ′ =

( X ,V )

, unde

U = {{1,2},{1,3},{2,4},{3,7},{4,5},{5,6},{5,7}}

Astfel, G

′ =

( X ,V

) este graf parŃial pentru graful G = ( X ,U ) . Din punct

au

de vedere al reprezentării, graful G = ( X ,U ) şi graful parŃial G

următoarele imagini:

′ =

(

X ,V

)

11

1 7 2 3 4 5 6 graful G = ( X ,U ) DefiniŃie.
1
7
2
3
4
5
6
graful G = ( X ,U )
DefiniŃie.
Fie
G = ( X ,U )
G ′′ =
(Y,V )
, în care Y ⊂ X , iar
V =

un

{{

x

1 7 2 3 4 5 6 graful parŃial G ′= ( X ,V )
1
7
2
3
4
5
6
graful parŃial G
′=
( X ,V )
graf.
Numim
subgraf
în
G,
graful
, y
} ∈
U
x
, y
Y
}
.

dat în exemplul 5. Considerăm

mulŃimea Y = {2,3, 4,5,7} X , care se obŃine din X prin eliminarea vârfurilor

1

eliminate obŃinem V = {{2,3},{2, 4},{3,7},{4,5},{5,7}} . ObŃinem astfel graful

toate muchiile care au una din extremităŃi vârfurile

Exemplul 6. Fie graful G = ( X ,U )

U

şi

6. Eliminând din

G

′′ =

(Y,V )

care

este subgraf pentru graful G = ( X ,U ) .

Din punct de vedere al reprezentării avem următoarea pereche de imagini:

1 7 7 2 2 3 3 4 5 4 5 6 graful G =
1
7
7
2
2
3
3
4
5
4
5
6
graful G = ( X ,U )
subgraful G
′′=
(Y ,V )
DefiniŃie. Fie G = ( X ,U ) un graf cu n vârfuri (
X
= n ). Spunem că G

este un graf complet , dacă oricare ar fi x, y X , avem {x, y}U (orice două

vârfuri din G sunt conectate sau adiacente).

12

Exemplul 7. Pentru graful G = ( X ,U ) din exemplul 5 nu este complet

deoarece, de exemplu, {1,7}U şi {4,6}U .

Graful complet cu n vârfuri se notează prin

PropoziŃia 3. Numărul muchiilor lui

K

n

este

K

n

2

C

n

.

este un graf complet şi astfel oricare ar fi

x, y X , avem {x, y}U , rezultă că U conŃine toate submulŃimile cu două

DemonstraŃie. Deoarece

K

n

elemente care se pot forma cu elemente în mulŃimea X . Folosind noŃiuni de combinatorică, avem astfel că dintr-o mulŃime cu n

elemente se pot forma

2

C

n

submulŃimi

cu

două

elemente.

Astfel,

dacă

K

n

=

(

X U

,

) , cu n

=

X

, atunci

U

2

= C

n

.

Exemplul

8.

construim

K

5

,

deci

graful

K

5

 

=

(

X ,U

)

,

unde

X = {1, 2,3,4,5} . Numărul de muchii este, conform propoziŃiei 3,

MulŃimea de muchii este astfel:

2

C

5

=

5

i

4

1

i

2

= 10

.

U = {{1,2}, {1,3}, {1, 4},{1,5}, {2,3}, {2,4},{2,5}, {3,4},{3,5}, {4,6}}

Graful K astfel definit are reprezentarea: 5 2 1 4 3 5 ╬ DefiniŃie. Fie
Graful
K
astfel definit are reprezentarea:
5
2
1
4
3
5
DefiniŃie. Fie G = ( X ,U ) un graf. Dacă există
X 1 şi
X
astfel încât
2
∩ X = ∅ şi X = X ∪ X
( X admite o partiŃie din două blocuri
X 1 şi
X
)
X 1
2
1
2
2
şi orice muchie din G
uneşte un nod din
X 1 cu unul din
X
(oricare ar fi
2
e = {x, y}∈U , dacă
x ∈ X
, atunci
y ∈ X
) spunem că G este graf bipartit.
1
2

13

Exemplul 9. Considerăm graful neorientat G = ( X ,U ) , în care mulŃimea

de vârfuri este X = {1,2,3, 4,5,6,7} şi mulŃimea de muchii este

X =

1

{

x X

1

U

= {{1,2},{1,6},{2,3},{2,7},{4,5},{4,6},{5,7}} .

Se observă că putem realiza partiŃia

X = X

1

X

2

,

X

1

X = ∅ , cu

2

1,3, 4,7

}

şi

X =

2

{

2,5,6

}

, deoarece pentru orice muchie {x, y}U avem

şi

Graful considerat are următoarea reprezentare:

yX

2

.

1 2 3 5 4 6 7
1
2
3
5
4
6
7

. Dacă

X 1 este adiacent cu toate vârfurile

din

este un graf bipartit complet, notat

Exemplul 10. Pentru graful bipartit din exemplul 9 se observă că el nu este un graf bipartit complet, deoarece, de exemplu, nu conŃine muchia {3,5} şi nici

muchia {2, 4}

DefiniŃie. Fie G = ( X ,U ) un graf bipartit cu partiŃiile

X

1

= p şi

X

2

= q şi dacă fiecare vârf din

X

2

(pentru orice

x X

1

şi orice

y X

2

K

p,q

.

X

1

şi

X

2

avem {x, y}U ) spunem că G

PropoziŃia 4. Graful bipartit complet

K

p,q

are pq muchii.

DemonstraŃie.

X

1

X

2

=∅ ,

X

1

= p

şi

Considerăm

= q .

X

2

K

p q

,

=

(

X U

,

)

,

X = X

1

X

2

,

14

Conform

definiŃiei

pentru

orice

x X

1

şi

orice

y X

2

avem

{x, y}U . Dacă fixăm

x X

1

, atunci pentru fiecare

y X

2

avem {x, y}U ,

deci numărul de muchii pentru

Fiecare vârf

x X

1

x X

1

fixat este egal cu

X 2 X 1
X
2
X
1

= q .

poate fi ales, fixat în

= p . Astfel, numărul

total de muchii este pq .

Exemplul 11. Considerăm că mulŃimea de vârfuri X = {1,2,3, 4,5,6,7}

este partiŃionată prin mulŃimile

X = X

1

X

2

şi

X

1

X

2

construi un graf bipartit

K

4,3

U =

{{

1,2

şi avem

U

= 12

{

3,5

X

1

şi

= 4

, unde mulŃimea de muchii este:

=

{

1,3, 4,7

p

=

2,3

4,6

X

1

,

}

X

2

şi

=

}{

,

2,7

}{

,

6,7

{

2,5,6

}

(are

loc

= ). Având

=

(

X ,U

)

, 1,5

, 1,6

,

3,6

}{

,

4,5

,

}{

,

q

=

}

,

}}

X

2

= 3

, putem

 

o succesiune de

}{ }{ }{ }{

}{

2, 4

}{

,

5,7

ceea ce corespunde enunŃului propoziŃiei 4.

Acest graf are următoarea reprezentare

1 2 3 5 4 6 7
1
2
3
5
4
6
7

DefiniŃie. Fie G = ( X ,U ) un graf. Numim lanŃ în G

vârfuri

x x

i

i

+

1

L =

U

(

x

0

,

x

1

,

,

x

r

)

= x x

0

1

x

r

, astfel încât pentru orice i = 0,1,

,

r 1 ,

(adică o succesiune în care oricare două vârfuri vecine din lanŃ sunt

adiacente).

15

şi

se numesc extremităŃile lanŃului L , iar r se numeşte lungimea lanŃului L ,

notată l (L) = r (lungimea unui lanŃ este dată de numărul muchiilor sale sau de

numărul vârfurilor mai puŃin unul). Exemplul 12. Considerăm graful G = ( X ,U ) care corespunde următoarei

reprezentări:

Fie G = ( X ,U ) este un graf şi

L = x x

0

1

x

r

un lanŃ în G . Vârfurile

x

0

x

r

1 6 2 3 5 4 Fie succesiunea de vârfuri L [ 1,2,4,1,3,6 ] .
1
6
2
3
5
4
Fie succesiunea de vârfuri
L
[
1,2,4,1,3,6
]
. Se formează un lanŃ în G
1 =

{4,1}, {1,3} ,{3,6} sunt muchii în U . Acest

lanŃ este de extremităŃi 1 şi 6 iar deoarece numărul vârfurilor din lanŃ este egal cu 6 avem l (L) = 5 . Acest lanŃ poate fi dat şi prin muchiile sale sub forma

deoarece perechile {1,2}, {2, 4} ,

L

1

=  

{ }{

1, 2

,

2,4

}{ }{ }{

, 1, 4

, 1,3

,

3,6

}

. Această succesiune nu

descrie un lanŃ deoarece graful considerat nu conŃine nicio muchie între vârfurile 3 şi 5.

se numeşte lanŃ

elementar dacă pentru orice 0 i, j r , i j , avem

noduri distincte).

(lanŃul trece prin

Fie

succesiunea

de

vârfuri

L

2

=

[

1,2,4,3,5

]

DefiniŃie. Fie G = ( X ,U ) un graf. LanŃul L din G

x

i

x

j

Exemplul 13. LanŃul

L

1

=

[

1,2,4,1,3,6

]

din exemplul 12 are în poziŃiile 1

şi 4 vârful 1 şi astfel nu este un lanŃ elementar (trece de două ori prin vârful 1)

16

În graful din exemplul 12, un lanŃ elementar este

L

3

=

[

1,2,4,3,6

]

DefiniŃie. Fie G = ( X ,U ) un graf. LanŃul L din G se numeşte lanŃ

(toate

muchiile sale sunt distincte).

din

din exemplul 13 sunt toate lanŃuri simple. Cel mai

bine se observă acest lucru la exprimarea lanŃurilor prin muchiile lor, aşa cum este

exemplul 12 şi

simplu dacă pentru orice 0 i, j r 1 , i j , avem {

Exemplul 14. LanŃurile

L

3

=

[

1,2,4,3,6

]

L

1

=

[

1,2,4,1,3,6

]

x

i

,

şi

x

i

+

1

}

L

2

=

[

{

x

j

,

x

j

+

1

}

1,2,4,3,5

]

cazul pentru lanŃul

muchii prin

L

1

=

{

L

1

1, 2

=

}

,

[

{

1,2,4,1,3,6

2,4

}

{

, 1, 4

}

]

, care în exemplul 12 este exprimat şi prin

{

, 1,3

}

,

{

3,6

}

.

În graful din exemplul 12 putem considera şi lanŃul

L

4

=

{

2,1, 4,3,1, 4,5

}

care nu este un lanŃ simplu deoarece conŃine de două ori muchia {1,4}.

PropoziŃia 5. Fie G = ( X ,U ) un graf şi L un lanŃ în G . Dacă L este

lanŃ elementar, atunci L este lanŃ simplu.

0

DemonstraŃie. Prin absurd,

i, j r 1 ,

i

j

astfel încât {

x

i

,

x

i

L

+

1

}

nu este lanŃ simplu. Atunci există

,

= {

}

. Astfel avem fie

x

j

,

x

j

+

1

x

i

= x

j

fie

x

i

=

x

j

+

1

, de unde rezultă că L nu este lanŃ elementar. ContradicŃie.

1.2. Grafuri orientate

DefiniŃie. Fie X o mulŃime finită şi nevidă. Numim graf orientat (digraf) orice pereche G = ( X ,U ) în care U X × X este o mulŃime finită de perechi

ordonate cu componente din X (U este o relaŃie binară pe X ).

 

Elementele mulŃimii

X

vor fi numite vârfuri sau noduri.

Elementele

mulŃimii U se numesc arce. Orice arc are forma (a, b), în care a se numeşte extremitate iniŃială, iar

b se numeşte extremitate finală a arcului (a, b).

Exemplul

15.

mulŃimea U X × X ,

U =

{(

(

1, 2

4,5

Considerăm

mulŃimea

X = {1,2,3, 4,5,6,7,8,9} şi

)(

)(

, 1,3

,

4,9

)(

,

)(

, 1,6

5,6

,

,

)(

)(

2,3

6,8

)(

,

2,9

)(

,

)(

,

7,6

)(

,

3, 4

8,7

)

,

)(

,

9,8

)}

17

Dacă luăm arcul (4,9) , spunem că 4 este extremitatea iniŃială a arcului, iar

9 este extremitatea finală a arcului. Graful descris are următoarea reprezentare

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

Un graf orientat se reprezintă grafic printr-o mulŃime de puncte corespunzătoare vârfurilor şi printr-o mulŃime de segmente orientate (săgeŃi) corespunzătoare arcelor. O săgeată este orientată de la extremitatea iniŃială spre extremitatea finală a arcului pe care îl reprezintă.

Dacă u = (x, y)U spunem că x şi y sunt adiacente în G şi că

nodurile x şi y sunt incidente arcului u sau că arcul u este incident nodurilor x şi y . Mai exact, spunem că u este incident exterior nodului x ( u pleacă sau iese din x ) şi că u este incident interior nodului y ( u ajunge sau intră în y ). Arcul

(x, y)U se mai notează şi prin xy .

DefiniŃie. Fie G = ( X ,U ) un graf orientat şi x X un nod fixat.

a) Numim grad interior al lui x , numărul arcelor incidente interior lui

adică mărimea

d

(

x

)

=

{(

y

,

x

)

U y

X

}

.

x ,

b) Numim grad exterior al lui x , numărul arcelor incidente exterior lui x ,

adică mărimea

d

+

(

x

)

{(

= ∈

x

,

y

)

U y

X

}

.

c) Prin gradul nodului x înŃelegem numărul total al arcelor incidente lui x ,

18

adică mărimea d (x)

=

d

(x)

+

d

+

(x) .

d) Dacă

e)

d (x) = 0 spunem că x X este vârf izolat.

(x)

= 1

şi d

+

şi d

(x)

+

(x)

= 0

spunem că x X

= 1

spunem că x X

Dacă d

d

(x)

este vârf terminal; dacă

= 0

este vârf iniŃial.

Exemplul 16. Pentru graful din exemplul 15 putem rezuma valorile pentru gradul interior, gradul exterior şi gradul fiecărui vârf în următorul tabel:

 

x

1

2 3

 

4

 

5 6

7 8

 

9

d

(x)

0

 

1 2

1

 

1 3

 

1 2

2

d

+

(x)

3

2 1

 

2

 

1 1

 

1 1

1

d (x)

3

3 3

 

3

2 4

 

2 3

 

3

DefiniŃie. Fie

G = ( X ,U )

un graf orientat şi

A X

o mulŃime de

vârfuri.

a) Gradul interior lui A este numărul arcelor ce intră în A şi care au nodul

lui

adică mărimea

iniŃial

în

afara

A ,

d

(

A

)

=

{(

y

,

x

)

∈ ∉

U y

A

,

x

A

}

.

b) Gradul exterior lui

terminal

d

+

(

A

)

=

{(

în

x y

,

)

A este numărul arcelor ce ies din

afara

A

,

y

=

lui

A ,

A

d

}

.

( A) d ( A)

+

+

.

adică

din

exemplul

d

(

x

)

 

A

şi au nodul mărimea

 

 

şi

mulŃimea

 

,

deoarece s-ar

∈ ∈

U x

c) Gradul total al lui A este d ( A)

Exemplu

17.

Considerăm

= 5

graful

= 3

d

15

. Astfel d ( A) = 8 .

A = {3, 4,6,7}. Avem d ( A)

1)

ObservaŃii

Evident, pentru orive

, d (A)

+

A X avem

( )

A

x

A

2)

putea ca anumite arce care ies din A să aibă extremitatea finală tot în A , arce care nu se numără la determinarea valorii d ( A) .

Evident, pentru orice

, deoarece s-ar

+

A X avem

( )

d A

+

d

+

(

x

)

x

A

putea ca anumite arce care intră în A să aibă extremitatea iniŃială tot în A , arce care nu se numără la determinarea valorii d ( A) .

Din 1) şi 2) rezultă că

d

(

A

)

d

(

x

)

.

x

A

DefiniŃie. Fie G = ( X ,U ) un graf orientat. Numim graf orientat parŃial

al lui G graful orientat G = ( X ,V ) în care V U .

19

Exemplul 18. Fie graful orientat G = ( X ,U ) , unde mulŃimea de vârfuri

este X = {1,2,3, 4,5,6} şi mulŃimea de arce este

U = {(1, 2 ) , (1,5 ) , (1,6 ) , ( 2,3) , ( 2,4 ) , ( 4,3) , ( 6, 4 ) , ( 6,5 )}

Dacă G

′ =

( X ,V )

, unde V = {(1,2),(1,5),(2, 4),(6,4),(6,5)} , este un

graf orientat parŃial al grafului G . Grafurile G şi G au reprezentarea următoare:

1 6 2 5 3 4 Graful orientat G = ( X ,U )
1
6
2
5
3
4
Graful orientat G = ( X ,U )
1 6 2 5 3 4 Graful orientat parŃial G ′= ( X ,V )
1
6
2
5
3
4
Graful orientat parŃial G
′=
( X ,V )

Facem observaŃia că în graful G s-a obŃinut un vârf izolat, vârful 3 (nu există niciun arc care să-l aibă ca extremitate).

╬ Un graf orientat parŃial al lui G se obŃine prin suprimarea anumitor arce ale lui G .

orientat al

lui G , graful orientat H = (Y ,V ) în care Y X , iar

(mulŃimea tuturor arcelor lui G cu ambele extremităŃi în Y ).

DefiniŃie. Fie G = ( X ,U ) un graf orientat. Numim subgraf

V

{(

= ∈

x

,

y

)

U x

,

y

Y

}

 

Exemplul

19.

Considerăm

graful

G = ( X ,U ) din exemplul 18.

Fie

Y = {2,3,4,6} X , care se obŃine prin eliminarea vârfurilor 1 şi 5 din

X .

Eliminăm din U

toate arcele care au ca extremitate pe 1 sau pe 5 şi obŃinem

U = {(2,3),(2, 4),(4,3),(6, 4)} . Graful G

′′ =

(Y ,V )

astfel obŃinut este subgraf

al lui G . Grafurile G şi G ′′ au următoarea reprezentare:

20

1 6 2 5 3 4 Graful orientat G = ( X ,U )
1
6
2
5
3
4
Graful orientat G = ( X ,U )
6 2 3 4 Graful orientat parŃial G ′′= (Y ,V )
6
2
3
4
Graful orientat parŃial G
′′=
(Y ,V )
 

Un

subgraf orientat se obŃine

suprimând

anumite vârfuri din

G

şi

eliminând toate arcele incidente vârfurilor suprimate. DefiniŃie. Fie G = ( X ,U ) un graf orientat. Dacă pentru orice x, y X

avem (x, y)U sau ( y, x)U spunem că G este graf orientat complet.

K

5

=

arce

(

Un graf orientat complet cu n vârfuri se notează cu

Exemplul 20. Să considerăm X = {1, 2,3,4,5} şi să construim

, un graf orientat complet cu 5 vârfuri. Să considerăm mulŃimea de

K

n

.

X ,U

)

U = {(1, 2 ) , (1,4 ) , (1,5 ) , ( 2, 4 ) , (3,1) , ( 3,2 ) , ( 4,3) , ( 4,5 ) , ( 5, 2 ) , (5,3)}

Graful obŃinut are reprezentarea 1 2 4 3 5
Graful obŃinut are reprezentarea
1
2
4
3
5

Fie mulŃimea

V = {(1,2),(1,5),(2,3),(2, 4),(3,1),(3,4),(4,1),(4,5),(5,2),(5,3)}

Se formează astfel

′ =

K

5

(

X ,V

)

care este tot un graf orientat complet. El diferă de

K

5

descris mai sus prin orientarea arcelor şi are reprezentarea

21

1 2 4 3 5
1
2
4
3
5

De asemenea, putem considera drept mulŃime de arce, mulŃimea

W =

{(

1,2

)(