Vous êtes sur la page 1sur 143

XXXXXXXXXXXXXXXXXXXXXXXXXXXXX

XXXXXXXXXXXXXXXX
XXXXXXXXXX
XXXXXXXX
XXXXXXXXXXX
Universitatea de Stat din Moldova
Facultatea de Matematic i Informatic
Sergiu CATARANCIUC
Angela NICULI
As!ecte algoritmice
ale teoriei grafurilor
"artea I
A!ro#at de
Consiliul metodico$tiin%ific
i editorial al USM
C&" USM
C'iinu( )**+
C,U -./0.1 2*1-034
C )/
Res!onsa#il de edi%ie5 "etru Soltan( academician(
!rofesor universitar
Recen6ent5 7umitru ,am#i%c'i(
doctor 8n tiin%e fi6ico$matematice(
conferen%iar universitar( AS&M
Recomandat de 5 Consiliul "rofesoral
al Facult%ii de Matematic i Informatic
Descrierea CIP a Camerei Naionale a Crii
Cataranciuc Sergiu
As!ecte algoritmice ale teoriei grafurilor 9 Sergiu Cataranciuc(
Angela Niculi%: Univ0 de Stat din Moldova0 Fac0 de Matematic i
Informatic ; C'05 C&" USM( )**+0 ;IS<N /13$//1-$1*$+--$.
"artea I0 ; )**+0 ; .=* !0 ; <i#liogr0 "0 .>3$.=* 2=3 tit040 ;
IS<N /13$//1-$1*$+--$.
$ $ .0 Teoria grafurilor0
-./0.12*1-034
Sergiu Cataranciuc(
Angela Niculi%( )**+
USM( )**+
C
C
IS<N /13$//1-$1*$+--$.
CU"RINS
INTRODUCERE.....................................................................................................5
I. NOIUNI DE BAZ...........................................................................................7
.0.0 ?RAFUL N&@RI&NTAT AI &L&M&NT&L& SAL&000000000000000000000000000000000000000000000000001
.0)0 ?RAFURI @RI&NTAT&000000000000000000000000000000000000000000000000000000000000000000000000000000000000003
.0>0 TI"URI 7& ?RAFURI00000000000000000000000000000000000000000000000000000000000000000000000000000000000000.*
.0=0 SU<?RAFURI0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.)
.0-0 LANURI AI CICLURI0000000000000000000000000000000000000000000000000000000000000000000000000000000000000.)
.0+0 R&"R&,&NTRI AL& ?RAFURIL@R00000000000000000000000000000000000000000000000000000000000000000.=
.010 "R@<L&M&0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.+
II. MULIMI STABILE N !RA"URI NEORIENTATE...............................#$
)0.0 MULIMI 7& BCRFURI STA<IL& INT&RI@R0000000000000000000000000000000000000000000000000000))
2.1.1. Modelul matematic al problemei de determinare .............................31
a mulimii de vrfuri stabile interior maxime..............................................31
2.1.2. Algoritmul recursiv al lui Bednarek i aulbee.................................3!
2.1.3. Algoritmul Malgrange........................................................................3"
2.1.#. Algoritmul Bron i $erbosc%..............................................................#!
)0)0 MULIMI 7& BCRFURI STA<IL& &DT&RI@R000000000000000000000000000000000000000000000000000-.
2.2.1. Modelul matematic al problemei de determinare..............................&&
a mulimii de vrfuri stabile exterior minime...............................................&&
2.2.2. Algoritmul de construire a mulimii de..............................................&'
vrfuri stabile exterior minime.....................................................................&'
)0>0 CU"LAEURI0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000++
2.3.1. (anuri de ma)orare a cupla)urilor....................................................*+
2.3.2. ,upla)uri -n grafuri bipartite.............................................................*2
2.3.3. ,upla)uri -n grafuri neorientate. ,a. general...............................*'
)0=0 "R@<L&M& 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003-
III. COLORAREA !RA"URILOR....................................................................%#
>0.0 C@L@RAR&A BCRFURIL@R0000000000000000000000000000000000000000000000000000000000000000000000000000/)
>0)0 M&T@7A "R@?RAMRII 7INAMIC&000000000000000000000000000000000000000000000000000000000000000/-
>0>0 AL?@RITMUL 7& TRI&R& IM"LICIT00000000000000000000000000000000000000000000000000000000000.**
>0=0 M&T@7& &URISTIC& 7& C@L@RAR&0000000000000000000000000000000000000000000000000000000000000.*.
3.#.1. Metoda succesiv/.............................................................................1+1
3.#.2. Metoda di%otomiei............................................................................1+2
>0-0 C@L@RAR&A MUCFIIL@R0000000000000000000000000000000000000000000000000000000000000000000000000000.*=
>0+0 "R@<L&M& 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.*-
I&. DRUMURI MINIME....................................................................................$$$
>
=0.0 AL?@RITMUL 7IEGSTRA 0000000000000000000000000000000000000000000000000000000000000000000000000000..>
=0)0 AL?@RITMUL F@R7000000000000000000000000000000000000000000000000000000000000000000000000000000000000..+
=0>0 AL?@RITMUL FL@H70000000000000000000000000000000000000000000000000000000000000000000000000000000000.)>
=0=0 AL?@RITMUL 7ANT,I?000000000000000000000000000000000000000000000000000000000000000000000000000000.)-
=0-0 AL?@RITMUL 7& CUTAR& 7U<L000000000000000000000000000000000000000000000000000000000000.)+
#.&.1. 0xpunerea algoritmului de c/utare dubl/.......................................12'
=0+0 "R@<L&M& 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.>.
...............................................................................................................................$'5
"I!. #7.................................................................................................................$'5
...............................................................................................................................$'(
BIBLIO!RA"IE.................................................................................................$'7
=
INTRODUCERE
Teoria grafurilor re!re6int una dintre domeniile cele mai
tinere ale matematicii moderne( care s$a de6voltat 8ntr$un ritm
accelerat( 8n s!ecial 8n ultimii >*$=* ani0 7atorit s!ecificului acestei
teorii( metodele ei de cercetare se a!lic !e larg la solu%ionarea unor
!ro#leme cu caracter a!licativ din diverse domenii( cum ar fi c'imia(
fi6ica( economia( informatica 0a0 ?rafurile re!re6int nite structuri
matematice discrete !rin intermediul crora se modelea6 un ir de
!rocese sociale( economice( #iologice etc0 Mai multe !ro#leme( atIt
cu caracter teoretic( cIt i !ractic( se formulea6 uor 8n termenii
grafurilor i se re6olv elegant !rin a!licarea metodelor teoriei
res!ective0
Aceast situa%ie a im!us necesitatea ela#orrii unor metode
s!ecifice de solu%ionare( care odat cu de6voltarea te'nicii de calcul
au condus la fundamentarea i de6voltarea a!aratului algoritmic al
teoriei grafurilor0 Situa%ia la moment 8n acest domeniu ne !ermite s
vor#im de rInd cu as!ectul teoretic i des!re as!ectul algoritmic0
"ractic solu%ionarea oricrei !ro#leme se finali6ea6 cu ela#orarea
unor algoritmi0 Ast6i am !utea cu certitudine s afirmm c
algoritmica de !erforman% se face( 8n mare msur( datorit
cunoaterii te'nicilor din algoritmica grafurilor0
"re6enta lucrare %ine de studierea unor !ro#leme clasice ale
teoriei grafurilor5 mul%imi sta#ile( colorarea grafurilor( drumuri
minime etc0 Sunt !ro!ui mai mul%i algoritmi de solu%ionare a
!ro#lemelor men%ionate( ceea ce ofer !osi#ilitatea de a alege 8n
de!enden% de situa%ia concret algoritmul adecvat( efectuInd o
anali6 com!arativ a eficien%ei acestora 8n de!enden% de diferi%i
!arametri0 &J!unerea materialului este 8nso%it de unele no%iuni i
re6ultate teoretice menite s facilite6e conce!erea metodelor i
algoritmilor !ro!ui0 Fiecare ca!itol con%ine un numr mare de
!ro#leme( !rin re6olvarea crora se ofer !osi#ilitatea de a o#%ine un
ir de cunotin%e utile 8n domeniul res!ectiv0 7e asemenea( la
-
sfIritul lucrrii se !ro!une o list #i#liografic 8n care sunt
men%ionate cele mai im!ortante lucrri din domeniul teoriei
grafurilor i a!lica%iilor acestora0
Lucrarea este destinat 8n s!ecial studen%ilor de la facult%ile
de matematic i informatic i %ine s com!lete6e cursul teoretic al
teoriei grafurilor0 7e asemenea( lucrarea ar !utea s !re6inte interes
i !entru s!ecialitii din alte domenii( !reocu!a%i de folosirea
a!aratului teoriei grafurilor la solu%ionarea !ro#lemelor !ractice0
Autorii 8i eJ!rim recunotin%a fa% de colegii Andrei
"otaru( @leg To!al( <oris FIncu( care 8n !rocesul !regtirii acestei
lucrri au intervenit cu sfaturi( idei i !ro!uneri utile( ce %in de unele
re6ultate i stilul eJ!unerii materialului( !recum i fa% de Irina
Andros !entru eJecutarea grafic a co!ertei0
7e asemenea aducem mul%umiri recen6entului 7umitru
,am#i%c'i i 8n mod s!ecial academicianului "etru Soltan( ale cror
o#serva%ii i sfaturi au contri#uit la 8m#unt%irea calitativ a lucrrii0
+
I. NOIUNI DE BAZ
$.$. !ra)u* ne+rientat ,i e*e-ente*e .a*e
De)ini/ia $.$.$. 1erec%ea
( ) 2 3(
4 unde 3 este o mulime
nevid/ de elemente distincte4 iar 2 este o mulime format/ din
perec%i neordonate de elemente din 3 4 se numete graf neorientat.
Kn cele ce urmea6 vom nota graful neorientat( determinat de
!erec'ea de mul%imi
( ) 2 3(
( !rin
( ) 2 3 5 :
0 &lementele lui 3
i 2 le numim res!ectiv vIrfuri i muc'ii ale grafului ?0
Kn de!enden% de structura mul%imilor 3 i 24 grafurile !ot fi
atIt finite( cIt i infinite0 Noi ne vom referi 8n continuare doar la
ca6ul grafurilor fnite( adic vom studia grafuri cu mul%imile 3 i 2
finite0 7ac
n 3
( atunci se s!une c graful este de ordin
n
0
Uneori( !entru a s!ecifica c 3 i 2 sunt mul%imile de vIrfuri i
muc'ii ale grafului 5 ( se va folosi nota%ia
5
3
i
5
2
0
Fie
L (000( ( M
) . n
x x x 3
i
L (000( ( M
) . m
u u u 2
0 7ac o
muc'ie )
u
este determinat de !erec'ea de vIrfuri
( )
l k
x x (
( atunci
vom scrie
( )
l k )
x x u (
i vom s!une c vIrfurile
k
x
(
l
x
sunt unite
cu aNutorul muc'iei )
u
0 Kn acest ca6(
k
x
i
l
x
sunt considerate
extremit/i ale muc'iei )
u
i se numesc vIrfuri adiacente0 Se mai
s!une c fiecare dintre vIrfurile
k
x
i
l
x
este incident muc'iei )
u

i reci!roc0 Adiacen%a dintre
k
x
(
l
x
se notea6 !rin
k
x
O
l
x
0
7ou muc'ii se numesc adiacente( dac sunt incidente unui vIrf
comun0 Astfel( rela%ia de adiacen% este definit atIt !e mul%imea de
vIrfuri( cIt i !e mul%imea de muc'ii ale grafului0
7ac
i
x
este un vIrf al grafului
( ) 2 3 5 :
( atunci
mul%imea
( ) { } 2 x x 3 x
) i )
( 5
se numete vecin/tate a lui
i
x
i se
notea6 !rin
( )
i 5
x 6
sau sim!lu
( )
i
x 6
0 5rad al vIrfului
3 x
i


este cardinalul mul%imii
( )
i
x 6
i se notea6 !rin deg
i
x
( sau
( )
i
x g
0
Altfel s!us( gradul unui vIrf
i
x
este egal cu numrul de vIrfuri ale
grafului( adiacente lui
i
x
2sau numrul de muc'ii incidente lui
i
x
40
1
"rin urmare( are loc inegalitatea
3 n n x
i
( deg .
0 Un graf( 8n
care gradele tuturor vIrfurilor sunt egale cu un numr k( se numete
graf k$regulat0
"rin analogie( vecin/tate a unei su#mul%imi de vIrfuri 3 A
a grafului neorientat
( ) 2 3 5 :
se numete mul%imea
( ) { } 7 . -nct astfel A 7 A 3 . A O 5 P Q
0 Uneori( concomitent cu
mul%imea
4 2 A
vom folosi i mul%imea

A x
x A

4 2 4 2
0 S!re
deose#ire de
4 2 A
mul%imea
4 2 A
!oate s con%in i vIrfuri
din A0 "rin urmare( 8ntre
4 2 A
i
4 2 A
are loc rela%ia
A A A P 4 2 4 2


0
?radul maJim i gradul minim al vIrfurilor unui graf 5 se
notea6 !rin
( ) 5
i
( ) 5
0 Astfel(
( ) { } x 5
3 x
deg maJ


(
( ) { } x 5
3 x
deg min


0
BIrful 3 x se numete i.olat 8n graful 5 ( dac
* deg x

i suspendat dac
. deg x
2vIrful suspendat 8n literatura de
s!ecialitate se mai numete vrf terminal40 Muc'ia incident unui
vIrf terminal( de asemenea( se numete suspendat/ 2terminal/40
&vident( dac
( ) ) 5
( atunci graful nu con%ine vIrfuri sus!endate
i dac
( ) . 5
( atunci graful nu con%ine vIrfuri u6olate0
Uor se verific( c !entru un graf cu n vIrfuri i m muc'ii
este adevrat egalitatea5
m x
3 x
) deg

0
$.#. !ra)uri +rientate
3
Kn ca6ul grafurilor neorientate( mul%imea de muc'ii 2 este
definit ca o mul%ime de !erec'i ne+r0+nate de vIrfuri ale grafului0
7ac cerem ca mul%imea 2 s fie format din !erec'i +r0+nate de
vIrfuri ale grafului( atunci acesta ne !ermite s vor#im des!re un alt
o#iect matematic ; graful orientat.
De)ini/ia $.#.$. 1erec%ea
( ) 2 3(
4 unde 3 este o mulime
nevid/ de elemente distincte4 iar 2 este o mulime format/ din
perec%i ordonate de elemente din 3 4 se numete graf orientat.
?raful orientat se notea6 !rin 4 : 2 2 5 0 7ac din
conteJt va fi clar c este vor#a de un graf orientat( atunci sge%ile
res!ective vor fi omise0
Kn ca6ul grafului orientat( elementele mul%imii 2 se numesc
arce0 "entru arcul
4 ( 2 7 x u
vIrful x este eJtremitate ini%ial( iar 7 ;
extremitate final/0 Se s!une c arcul
4 ( 2 7 x u
este orientat de la x
s!re 70 BIrful x se mai numete predecesorul vrfului 7( iar 7 ;
succesorul vrfului x0
S!re deose#ire de ca6ul neorientat( 8n graful orientat !erec'ile
de vIrfuri
4 ( 2
) i
x x
i
4 ( 2
i )
x x
re!re6int arce diferite0 ?raful orientat
4 : 2 2 5 ( care nu con%ine 8n acelai tim! arcele
4 ( 2
) i
x x
i
4 ( 2
i )
x x
!entru
3 x x
) i
(
se numete antisimetric0 ?raful
antisimetric cu un numr maJim de arce se numete turnir0
De)ini/ia $.#.#. 8irul de vrfuri
4 ( ( ( 2
. * r
x x x 9
cu
proprietatea c/
2 x x x x x x
r r

4 ( 2 ( 4( ( 2 4( ( 2
. ) . . *
4 se numete
drum -n graful 5. :rfurile
*
x
i
r
x
se numesc extremit/i ale
drumului 90
9ac/ toate vrfurile drumului sunt distincte dou/ cte dou/4
atunci drumul se numete elementar.
BIrful
*
x
se mai numete extremitate iniial/( iar
r
x
$
extremitate final/ a drumului 9.
/
De)ini/ia $.#.'. 9rumul
4 ( ( ( 2
. * r
x x x 9
-n care toate
arcele
4 ( 2 ( 4( ( 2 4( ( 2
. ) . . * r r
x x x x x x

sunt distincte dou/ cte


dou/ i
r
x x
*
se numete circuit.
,ircuitul se numete elementar dac/ toate vrfurile sale sunt
distincte dou/ cte dou/4 cu excepia primului i ultimului vrf care
coincid.
7ac
i
x
este un vIrf al grafului orientat 4 : 2 2 5 ( atunci
cardinalul mul%imii ( ) { } 2 x x x x 6
) i ) i

+
4 ( 2 5 se numete
semigrad exterior( iar cardinalul mul%imii
( ) { } 2 x x x x 6
i ) ) i

4 ( 2 5
; semigrad interior al vIrfului
i
x
0
Semigradul eJterior se notea6 !rin
4 2
i
x g
+
( iar semigradul interior
; !rin
4 2
i
x g

0 @#servm c
4 2
i
x g
+
i
4 2
i
x g

re!re6int
res!ectiv numrul succesorilor i al !redecesorilor vIrfului
i
x
0
?radul unui vIrf
i
x
al grafului orientat se formea6 din
gradul eJterior i gradul interior i se definete astfel5
4 2 4 2 4 2
i i i
x g x g x g
+
+
0
2&vident( 8n ca6ul grafurilor neorientate are loc egalitatea
4 2 4 2 4 2
i i i
x g x g x g
+

R deg
i
x
04
$.'. Ti1uri 0e gra)uri
Kn de!enden% de structura mul%imilor de vIrfuri i de
muc'ii( !utem face o clasificare a grafurilor0 Kn afar de grafurile
neorientate i cele orientate descrise anterior( se mai 8ntIlnesc
urmtoarele ti!uri de grafuri5
5raf vid ; graful fr muc'ii0 Se notea6 !rin
n
;
0
5raf trivial ;graful
( ) 2 3 5 :
!entru care 2 i
. 3
0
.*
Multigraf ; graful 8n care eJist cel !u%in o !erec'e de vIrfuri
) i
x x (
( care re!re6int mai mult decIt o muc'ie a grafului0
Kn acest ca6( vIrfurile ) i
x x (
sunt unite cu aNutorul a ) k
muc'ii i se s!une c aceast !erec'e de vIrfuri definete o
muc'ie multi!l de ordin k0
1seudograf ; multigraful care con%ine cel !u%in o muc'ie(
eJtremit%ile creia coincid0 Astfel de muc'ie se numete
#ucl0
5raf simplu < graful finit( ce nu con%ine #ucle i muc'ii
multi!le0
Kn cele ce urmea6( ca regul( vom considera c grafurile
eJaminate sunt grafuri sim!le0
5raf complet ; graful( oricare dou vIrfuri ale cruia sunt
adiacente0 Se notea6 !rin
n
$
0 Numrul de muc'ii din
n
$

este
)
4 . 2
)


n n
, 2
n
0
5raf bipartit ; graful( a crui mul%ime de de vIrfuri !oate fi
divi6at 8n dou su#mul%imi
.
3
i
)
3
astfel( 8ncIt fiecare
muc'ie are o eJtremitate 8n
.
3
( iar alt eJtremitate ; 8n
)
3
0 Se notea6 graful #i!artit !rin
4 : ( 2
) .
2 3 3 5
0 7ac 8n
graful #i!artit fiecare vIrf din
.
3
este adiacent cu toate
vIrfurile din
)
3
( atunci avem un graf bipartit complet0
Numrul de muc'ii 8ntr$un astfel de graf este
) .
3 3
0
?raful #i!artit com!let
4 : ( 2
) .
2 3 3 5
cu
.
3
2 p i
)
3
2 = se notea6 !rin = p
$
( 0 Kn ca6ul !R. graful =
$
( .
se numete stea0
5raf complementar al grafului
( ) 2 5 :
; graful( cu
aceeai mul%ime de vIrfui 3( 8n care dou vIrfuri sunt
adiacente( dac i numai dac ele nu sunt adiacente 8n 50
?raful com!lementar se notea6 !rin 5 0
..
5raf al muc%iilor grafului
( ) 2 3 5 :
; graful( vIrfurile
cruia cores!und muc'iilor grafului 5( i dou vIrfuri sunt
adiacente( dac i numai dac sunt adiacente muc'iile
cores!un6toare lor 8n 50 ?raful muc'iilor se notea6 !rin
4 25 (
0
$.3. Su4gra)uri
De)ini/ia $.3.$. 2n graf
( )
> >
2 3 > :
se numete subgraf
al grafului
( )
5 5
2 3 5 :
4 dac/
5 >
3 3
i
5 >
2 2
.
Conform defini%iei( orice graf !oate fi considerat dre!t
su#graf al su0
De)ini/ia $.3.#. 2n graf
( )
> >
2 3 > :
se numete subgraf
parial al grafului
( )
5 5
2 3 5 :
4 dac/
5 >
3 3
iar
5 >
2 2
.
De)ini/ia $.3.'. 2n graf
( )
> >
2 3 > :
se numete subgraf
al grafului
( )
5 5
2 3 5 :
4 generat de submulimea de vrfuri
5
3 A
4 dac/
1?
A 3
>

@
2? dou/ vrfuri
>
3 7 x (
sunt adiacente -n > dac/ i
numai dac/ ele sunt adiacente -n 5.
$.5. Lan/uri ,i cic*uri
@ succesiune de vIrfuri
( )
. ) .
( (000( (
+

k k
x x x x
se numete
lan 8n graful
( ) 2 3 5 :
( dac
( ) 2 x x
i i

+.
(
!entru
k i ( .
0 Kn
acest ca6( se s!une c lan%ul

unete vIrfurile
. .
(
+ k
x x
0 Bom
considera c o muc'ie

)
u ( )
l p
x x (
din 5 a!ar%ine lan%ului

(
dac i numai dac p
x
i
l
x
sunt vIrfuri vecine 8n

( adic
{ } k p (000( ) ( .
i
. + p l
2sau invers40 BIrfurile
. .
(
+ k
x x
se
.)
numesc extremit/i ale lan%ului( iar numrul k A lungimea lui0 7ac
. . +

k
x x
atunci

se numete ciclu0
Lan%ul( ce con%ine fiecare muc'ie a grafului ce* -u*t o
singur dat se numete lan simplu4 iar lan%ul( toate vIrfurile cruia
sunt distincte dou cIte dou( se numete lan elementar0
Ciclul ce con%ine fiecare muc'ie a grafului ce* -u*t o singur
dat se numete ciclu simplu4 iar ciclul( toate vIrfurile cruia sunt
distincte dou cIte dou( se numete ciclu elementar0
Nu orice graf con%ine cicluri elementare0 ?raful coneJ ce nu
con%ine cicluri elementare se numete arbore0 Su#graful !ar%ial
coneJ ce nu con%ine cicluri elementare se numete arbore parial0
De)ini/ia $.5.$. Lan%ul 2ciclul4 ce con%ine fiecare muc'ie a
grafului e5act + .ingur6 0at6 se numete lan Bciclu? eulerian.
De)ini/ia $.5.#. Lan%ul 2ciclul4 ce con%ine fiecare vIrf al
grafului e5act + .ingur6 0at6 se numete lan Bciclu? %amiltonian.
?raful care con%ine ciclu eulerian se numete graf eulerian(
iar graful care con%ine ciclu 'amiltonian se numete graf 'amiltonian0
7ac 8ntr$un graf orice dou vIrfuri sunt unite !rintr$un lan%(
atunci acest graf se numete conex0 Su#graful maJimal coneJ al
grafului 5 se numete component/ conex/0
De)ini/ia $.5.'. Cubmulimea cu un num/r minim de v/rfuri
A ale unui graf
( ) 2 3 5 :
se numete mulime de articulaie a
acestui graf4 dac/ dup/ eliminarea acesteia din 5 se obine un graf
nou cu un num/r mai mare de componente conexe -n raport cu 5.
Kn ca6ul
. A
( unicul vIrf ce a!ar%ine mul%imii A se
numete punct de articulaie0 Muc'ia grafului cu aceeai !ro!rietate
se numete istm0 &vident( dac u este un istm al unui graf cu > n
vIrfuri( atunci cel !u%in una dintre eJtremit%ile sale este !unct de
articula%ie0 Afirma%ia invers nu este adevrat0
.>
De)ini/ia $.5.3. ;rice subgraf maximal al grafului
( ) 2 3 5 :
4 care nu conine puncte de articulaie4 se numete bloc.
Notm !rin
( ) 7 x d (
lungimea minim a lan%urilor ce unesc
vIrfurile x4 7. Kn ca6ul cInd 8ntre dou vIrfuri
5
3 7 x (
nu eJist
nici un lan%( se consider
( ) 7 x d (
0 Numrul
( ) 7 x d (
se numete
distana !e mul%imea de vIrfuri ale unui graf
( ) 2 3 5 :
( deoarece
satisface aJiomele metricii( adic !entru oricare trei vIrfuri
5
3 . 7 x ( (
au loc urmtoarele rela%ii5
.4
( ) * ( 7 x d
i
( ) * ( 7 x d
( dac i numai dac
7 x
(
)4
( ) ( ) x 7 d 7 x d ( (
(
>4
( ) ( ) ( ) . x d . 7 d 7 x d ( ( ( +
0
Cu aNutorul distan%ei se definete !uterea de gradul . k al
grafului0 Bom numi putere de gradul k al unui graf 5 ( graful
k
5
ce con%ine aceeai mul%ime de vIrfuri cu 5 i 8n care dou vIrfuri
7 x(
sunt adiacente dac i numai dac 8n 5 are loc inegalitatea
( ) k 7 x d (
0
$.(. Re1re7ent6ri a*e gra)uri*+r
Kn afar de re!re6entarea grafului descris nemiNlocit cu
aNutorul mul%imilor de vIrfuri i muc'ii( graful mai !oate fi
re!re6entat atIt alge#ric( !rin intermediul matricei de adiacen%( a
matricei de inciden% etc0 ( cIt i geometric( unde vIrfurile grafului
cores!und unor !uncte din s!a%iu( iar orice muc'ie se re!re6int
!rintr$o linie continu( ce unete !unctele cores!un6toare
eJtremit%ilor acesteia0 Kn ca6ul grafurilor orientate( liniile sunt
8n6estrate cu sge%i( care cores!und orientrii arcelor0 ?raful
( ) 2 3 5 :
care !oate fi re!re6entat 8n !lan astfel( 8nct orice dou
muc'ii ale sale nu au !uncte comune interioare se numete planar0
Knsi re!re6entarea geometric a grafului !lanar( ce !osed
.=
!ro!rietatea indicat( se numete grafAplan0 Se mai s!une c graful$
!lan este o re!re6entare corect 8n !lan a grafului !lanar0 La
su!rimarea din !lan a muc'iilor i vIrfurilor unui graf$!lan
( ) 2 3 5 :
8ntreg !lanul se 8m!arte 8n com!onente coneJe( numite
faete Bfee? ale lui 5 0 Com!onentele coneJe mrginite se numesc
faete interioare( iar com!onen%a coneJ nemrginit $ faet/
exterioar/0 @rice graf$!lan con%ine eJact o fa%et eJterioar0
@ matrice #inar i)
a A
de dimensiune
n n
se numete
matrice de adiacen/ a grafului 5 cu mul%imea de vIrfuri
{ }
n 5
x x x 3 (000( (
) .

( dac5

'

contrar0 ca6 8n ( *
( cInd ca6ul 8n ( .
) i
i)
x x
a
Matricea de adiacen% a grafului este o matrice simetric cu
elementele de !e diagonala !rinci!al egale cu 6ero0 Liniile i
coloanele acestei matrici cores!und vIrfurilor grafului0 Numrul de
unit%i dintr$o linie 2coloan4 este egal cu gradul vIrfului
cores!un6tor acestei linii 2coloane40
@ matrice #inar i)
b B
( de dimensiune
m n
se numete
matrice de inciden/ a grafului
( ) 2 3 5 :
(
L (000( ( M
) . n
x x x 3
(
L (000( ( M
) . m
u u u 2
( dac

'

contrar0 ca6 8n ( *
( incidente sunt muc'ia i vIrful cInd ca6ul 8n ( .
) i
i)
u x
b
7eseori acelai graf( fiind re!re6entat 8n diferite moduri(
creea6 ilu6ia c este vor#a des!re structuri diferite0 Ar fi firesc ca 8n
.-
toate aceste ca6uri s convenim c se studia6 un o#iect matematic
identic0 Astfel de grafuri 8n viitor se vor numi i.omorfe0
7ou grafuri
( )
. . .
:2 3 5 i
( )
) ) )
:2 3 5 se numesc
i.omorfe4 dac eJist o a!lica%ie #iNectiv
) .
5 3 3
astfel 8ncIt
( )
.
( 2 x x
) i

( dac i numai dac
( ) ( ) ( )
)
( 2 x x
) i

0
Kn diverse a!lica%ii ale teoriei grafurilor se mai 8ntIlnesc i
alte ti!uri de matrici( !rintre care matricea distan%elor( matricea
Gir'goff( matricea de accesi#ilitate etc0
$.7. 8r+4*e-e
$. Fie D o mul%ime cu n elemente0 S se determine5
a4 numrul grafurilor neorientate( a cror mul%ime de vIrfuri
este 3:
#4 numrul grafurilor neorientate cu #ucle( a cror mul%ime de
vIrfuri este 3:
c4 numrul grafurilor orientate( a cror mul%ime de vIrfuri este
3:
d4 numrul grafurilor orientate( fr #ucle( antisimetrice( a
cror mul%ime de vIrfuri este 3:
e4 numrul turnirurilor( a cror mul%ime de vIrfuri este 3:
f4numrul grafurilor neorientate care au gradele vIrfurilor
distincte0
#. Care este numrul de diagonale 8ntr$un !oligon conveJ cu n
vIrfuri0
'. S se demonstre6e c !entru orice ) > n ( graful stea n
$
( .
nu este graf al muc'iilor 2adic nu eJist un astfel de graf neorientat
54 8ncIt graful muc'iilor
4 25 (
s fie i6omorf lui n
$
( . 40
3. Fie A o su#mul%ime de vIrfuri ale grafului neorientat
( ) 2 3 5 :
( iar k ; numrul muc'iilor care au eJact o eJtremitate 8n
.+
A0 S se demonstre6e c numrul k este de aceeai !aritate cu
numrul vIrfurilor de grad im!ar din A0
5. Un graf neorientat 5 se numete autocom!lementar( dac
graful com!lementar 5 este i6omorf lui 50 S se construiasc un
graf autocom!lementar cu un numr minim de vIrfuri . > n 0
(. @ matrice se numete total unimodular( dac orice minor al
su este egal cu .( ;. sau *0 S se demonstre6e c matricea de
inciden% a unui graf #i!artit este unimodular0
7. S se determine condi%iile 8n care graful muc'iilor al unui
graf
( ) 2 3 5 :
este regulat0 S se construiasc un graf coneJ 54 cu
un numr minim de vIrfuri > > n ( astfel 8ncIt graful muc'iilor (B5?
s fie regulat0
9. Fie 4 : 2 2 3 5 un graf orientat0 S se demonstre6e
egalit%ile5
a4

x x
x g x g 4 2 4 2
:
#4
D k k x g x g
x


+
( ) 4 2 4 2
0
%. Fie 4 : 2 2 3 5 un graf orientat antisimetric cu n vIrfuri i
un numr maJim de arce 2
5
este turnir40 S se verifice rela%iile5
a4
+
+
x n x g x g ( . 4 2 4 2
:
#4
)
4 2 4 2
n
x x
, x g x g


+
:
c4
( ) ( )

x x
x g x g
) )
4 2 4 2
:
d4
( ) ( )


+

+

x x
x g n x g
) )
. 4 2 4 2
0
.1
$:. S se verifice urmtoarele afirma%ii5
a4 eJist grafuri neorientate de ordin .* !entru care irul
gradelor vIrfurilor sale este res!rectiv
.( .( .( >( >( >( =( +( 1( / :
#4 eJist grafuri neorientate !entru care gradele
vIrfurilor sunt
distincte dou cIte dou:
c4 eJist grafuri neorientate cu = n vIrfuri( !entru care
eJact
> vIrfuri sunt de grad im!ar( iar celelalte 2n ; >4 vIrfuri sunt de grad
!ar:
d4 !entru orice graf neorientat( numrul vIrfurilor de
ordin
im!ar este !ar0
$$. Fie
( ) 2 3 5 :
un graf neorientat cu n vIrfuri i m muc'ii0
S se demonstre6e c dac gradul fiecrui vIrf al acestui graf este k
sau . + k ( atunci numrul vIrfurilor de grad k este
m n k ) 4 . 2 +
0
$#. S se verifice care dintre urmtoarele afirma%ii este
adevrat i care este fals5
a4 reuniunea a dou lan%uri disNuncte ce leag vIrfurile x i 7
ale unui graf 5 formea6 un ciclu elementar:
#4 reuniunea a dou lan%uri elementare disNuncte ce leag
vIrfurile x i 7 ale unui graf 5 formea6 un ciclu elementar0
$'. S se construiasc un graf >$regulat cu )n vIrfuri( care nu
con%ine cicluri elementare de lungimea egal cu trei0
$3. Care este numrul maJim de muc'ii 8ntr$un graf cu n
vIrfuri ce nu con%ine cicluri elementare de lungime !arS
$5. S se construiasc un graf
( ) 2 3 5 :
(
=
( !entru
care5
.3
a0 graful muc'ilor
4 25 (
nu este eulerian( iar
4 2
)
5 (

este graf eulerian:
#0 graful muc'iilor
4 25 (
nu este eulerian( 8ns este
'amiltonian:
c0 graful muc'iilor
4 25 (
nu este nici eulerian i nici
'amiltonian:
d0 graful muc'iilor
4 25 (
este i eulerian i 'amiltonian:
e0 graful muc'iilor
4 25 (
este eulerian( 8ns nu este
'amiltonian0
$(. S se verifice afiram%iile5
a4 orice ciclu con%ine un ciclu elementar:
#4 orice ciclu de lungime im!ar con%ine un
elementar0
$7. Fie
n
5
un graf neorientat( vIrfurile cruia re!re6int
!rimele n numere naturale
L 000( ( ) ( . M n
( iar dou vIrfuri
7 x(
sunt
adiacente( dac i numai dac numerele x i 7 sunt reci!roc !rime0
a4 S se scrie matricea de adiacen% a grafurilor
1 + -
( ( 5 5 5
0
Care este structura matricei de adiacen% a gragului
n
5
S
#4 S se verifice dac graful
n
5
este coneJ0
c4 S se demonstre6e c
m
5
(
n m <
este su#graf al grafului
n
5
( generat de su#mul%imea de vIrfuri
L 000( ( ) ( . M m
0
$9. S se demonstre6e c dac 5 este un graf neorientat cu
) > n vIrfuri i
)
.
>
n
, m
muc'ii( atunci 5 este coneJ0
$%. S se demonstre6e c dac
) 4 . 2 4 2 n 5
( atunci graful
5 este coneJ0
#:. S se verifice afiram%ia5 un graf 5 este coneJ( dac i numai
dac !entru orice divi6are a mul%imii de vIrfuri
5
3
8n su#mul%imile
) .
( 3 3
( eJist o muc'ie din 5 cu o eJtremitate 8n
.
3
i alt
eJtremitate 8n
)
3
0
./
#$. Fie 5 un graf coneJ0 &ste adevrat oare c graful
com!lementar nu este coneJS Cum ar fi graful com!lementar( dac
graful 5 nu ar fi coneJS
##. Fie 5 un graf coneJ0 &ste adevrat oare c graful
com!lementar nu este coneJS Cum ar fi graful com!lementar( dac
graful 5 nu ar fi coneJS
#'. S se verifice afirma%ia5 8ntr$un graf coneJ orice dou
lan%uri elementare de lungime maJim con%in cel !u%in un vIrf
comun0
#3. S se demonstre6e c !entru oricare trei numere naturale
m n(
i k( care satisfac condi%iile
n k . :
)
. +

k n
, m k n
eJist graf neorientat 5 cu n vIrfuri( m muc'ii i eJact k com!onente
coneJe0
#5. Fie 5 un graf !lanar( coneJ cu n vIrfuri( m muc'ii i f
fa%ete0 S se demonstre6e formula &uler
) + f m n
0
#(. S se demonstre6e c dac un graf neorientat 5 cu n vIrfuri
nu con%ine cicluri de lungimea trei i numrul muc'iilor m verific
inegalitatea
) ) > n m (
atunci 5 nu este !lanar0
#7. S se demonstre6e c 8n orice graf !lanar
( ) - ( : 3 2 3 5
eJist cel !u%in !atru vIrfuri de grad cel mult
cinci0
)*
#9. Fie n( m i f re!re6int numrul de vIrfuri( numrul de
muc'ii i numrul de fa%ete ale unui graf !lanar0 S se verifice
inegalit%ile5
a4 + > n m :
#4
= ) n f
0
#%. Un graf !lanar
( ) 2 3 5 :
se numete eJterior !lanar(
dac !oate fi desenat 8n !lan astfel( 8ncIt toate vIrfurile sale s
a!ar%in frontierei unei fa%ete0 S se demonstre6e c !entru orice graf
!lanar eJterior

4 ( 2 2 3 5
(
3 3
( cu un maJim de muc'ii( sunt
adevrate urmtoarele afirma%ii5
a4
> ) n 2
:
#4 eJist cel !u%in dou vIrfuri de grad doi0
':. Fie 5 un graf !lanar cu = n vIrfuri( gradele crora sunt
n
d d d (000( (
) .
0 S se demonstre6e inegalitatea5

+
n
i
i
n d
.
) )
+) 4 > 2 ) 0
S se verifice afirma%ia5 !entru orice = n eJist graf !lanar
( ) 2 3 5 :
;
n 3
; cu toate fe%ele triung'iulare astfel( 8ncIt
inegalitatea men%ionat se transform 8ntr$o egalitateS
II. MULIMI STABILE N !RA"URI NEORIENTATE
No%iunea de sta#ilitate este una dintre no%iunile fundamentale
ale teoriei grafurilor ce %ine de rela%ia de adiacen% dintre elementele
sale0 7at fiind fa!tul c rela%ia de adiacent se definete atIt !entru
vIrfurile( cIt i !entru muc'iile unui graf( 8n cele ce urmea6 vom
vor#i des!re diferite varia%ii ale no%iunii de sta#ilitate0 Kn acest
ca!itol( vor fi studiate unele metode i algoritmi de solu%ionare a
).
!ro#lemelor legate de determinarea mul%imilor de vIrfuri sta#ile
interior( sta#ile eJterior( a cu!laNului grafului etc0
"entru descrierea unor mul%imi de elemente( deseori se recurge
la utili6area vectorilor #inari0 Fie E o su#mul%ime de elemente din
L (000( ( M
) . n
x x x 3
0 "entru E definim vectorul
4 (000( ( 2
) . n .
c c c ,
cu elementele

'

0 dac ( *
( dac ( .
E x
E x
c
i
i
i
Un astfel de vector se numete vector caracteristic al mul%imii E0
#.$. Mu*/i-i 0e <=r)uri .ta4i*e interi+r
De)ini/ia #.$.$. Cubmulimea de vrfuri 3 A a unui graf 5
se numete stabil/ interior4 dac/ nu conine dou/ vrfuri adiacente.
Folosind nota%iile descrise mai sus( orice mul%ime sta#il
interior 3 A este caracteri6at de rela%ia
4 2x A
T( A x
sau

4 2 A A
T0
Kn conformitate cu defini%ia dat( orice graf 5 con%ine mul%imi
sta#ile interior0 Astfel( de eJem!lu( orice mul%ime format dintr$un
singur vIrf din 5 este sta#il interior0
De)ini/ia #.$.#. Mulimea de vrfuri stabil/ interior A se
numete maximal/4 dac/ -n graf nu exist/ o alt/ mulime stabil/
interior > astfel4 -nct > A .
))
Mul%imea sta#il interior maJimal A !oate fi re!re6entat !rin
rela%ia5

4 2> A T ( !entru 3 > ( astfel 8ncIt > A 0


De)ini/ia #.$.'. Mulimea de vrfuri stabil/ interior A se
numete maxim/4 dac/ pentru orice mulime stabil/ interior > din
graf are loc relaia
> A
.
Cardinalul mul%imii sta#ile interior maJime a grafului 5 se
notea6 !rin
4 2
*
5
i se numete num/r de stabilitate intern/0
7ac notm !rin F familia tuturor mul%imilor sta#ile interior din
graf( atunci
{ } A 5
A U
*
maJ 4 2


0
"entru graful 5 din fig0.( mul%imile
{ }
{ }
{ }
{ }
{ }
{ }0 ( ( (
( ( ( ( (
( ( (
( (
( (
(
3 + - ) +
3 + - > . -
1 > . =
1 ) >
> . )
= .
x x x x C
x x x x x C
x x x C
x x C
x x C
x C

sunt sta#ile interior0 "rintre ele C


>
( C
=
( C
-
( C
+
sunt maJimale( i numai
una ; C
-
este mul%ime sta#il interior maJim0 "rin urmare(
- 4 2
*
5
0
)>
x
.
x
3
x
1
x
+
x
-
x
=
x
)
x
>
"ig. $
Sunt cunoscute unele estimri ale numrului de sta#ilitate
intern
4 2
*
5
0 S men%ionm doar cIteva dintre ele5
a>

+
x
x 5
.
*
4 deg . 2 4 2
0
2)0.4
Kn ca6ul grafului din fig0.( du! cum a fost calculat mai sus(
- 4 2
*
5
0 Suma din !artea drea!t a inegalit%ii 2)0.4 este5

+ + + + + + + +
x
x
+
.-
)
.
=
.
>
.
>
.
+
.
>
.
=
.
>
.
4 deg . 2
.
(
ceea ce confirm estimarea lui
4 2
*
5
dat !rin rela%ia a40
"entru unele grafuri neorientate( inegalitatea a4 se transform
8ntr$o egalitate0 7e eJem!lu( 8n ca6ul unui graf com!let
n
$
(
o#%inem
.
.
44 . 2 . 2 4 deg . 2
. .
+ +

n
n
n n x
x
( care coincide
cu numrul de sta#ilitate intern
. 4 2
*

n
$
0 Kn realitate 8ns(
diferen%a dintre
4 2
*
5
i suma indicat 8n 2)0.04 ar !utea fi oricIt de
mare0
"entru a ne convinge de acest fa!t( vom anali6a graful
( ) 2 3 5 :
cu mul%imea de vIrfuri
) .
3 3 3 U ( astfel 8ncIt
T
) .
3 3 I (
k 3
.
(
.
)
k 3
i cu mul%imea de muc'ii
) .
2 2 2 ( unde
{ }
) . .
( 5 4 ( 2 7 x 7 x 2 (
{ } t s t s t s 2 i ( 5 4 ( 2
) )
0
)=
Kn graful construit( gradul unui vIrf . este k ; .( dac
.
3 .

i )k ; )( dac
)
3 .
0 "rin urmare(
0 . orice !entru )
. )
.
. 4 . 2 4 . ) 2
.
4 . 2 44 ) ) 2 . 2 44 . 2 . 2
4 deg . 2 4 deg . 2 4 deg . 2
.
. .
. . .
) .
<

+ +
+ + +
+ + + +


k
k
k
k k k
k
k k k k
x x x
x x x
7eci( !artea drea!t a rela%iei a4 8n ca6ul grafului studiat este un
numr mai mic decIt )0
"ig. #
"e de alt !arte( !recum se !oate o#serva din fig0)( numrul de
sta#ilitate intern !entru acest graf este
k 5 4 2
*

i odat cu
creterea valorii lui k !oate fi fcut oricIt de mare0
4>
d
n
5
+

.
4 2
*

( unde n este numrul de vIrfuri din graf( iar


d este gradul mediu al vIrfurilor care se calculea6 du! formula

x
n x d 9 deg
0
c>

n
54 2
*

( unde este gradul maJim al vIrfurilor din


graf0
)-
VV
V
3
.
W
3
)
W
Aceast evaluare !oate fi folosit 8n s!ecial 8n ca6urile cInd 5
este un graf regulat sau a!roa!e de un graf regulat0 Astfel( dac 5
este un graf cu#ic 2graf( 8n care gradele tuturor vIrfurilor sunt egale
cu trei4( atunci 8n #a6a rela%iei c4 vom avea
>
4 2
*
n
5
0 Folosind
rela%ia #4 8ns( vom o#%ine
=
4 2
*
n
5
0
0>

+ +
+

x
x
n
5
.
*
4 deg . 2
4 . 2
4 2
0
e>
{ }
+
+ p p p 5 ( min 4 2
*
*

( unde
+
p p p ( (
*
sunt res!ectiv
numrul de rdcini caracteristice egale cu 6ero( negative i !o6itive(
ale matricei de adiacen% a grafului 50
La studierea unui graf neorientat
4 U : 2 5
( concomitent cu
no%iunea de mul%ime sta#il interior( 8n diverse a!lica%ii( deseori( se
folosete i no%iunea de clic0 7ac 8n !rimul ca6 toate vIrfurile
mul%imii nu sunt adiacente dou cIte dou( atunci 8n ca6ul clicii( din
contra( vIrfurile sunt adiacente dou cIte dou0 Kn acest sens( clica
!oate fi !rivit ca o no%iune reci!roc a no%iunii de mul%ime sta#il
interior0
De)ini/ia #.$.3. Cubmulimea de vrfuri 3 A a grafului 5 se
numete clic/4 dac/ oricare dou/ vrfuri din A sunt adiacente.
Conform acestei defini%ii( dac A este o clic a grafului 5(
atunci ea generea6 8n 5 un su#graf com!let0 @rice graf neorientat
con%ine clici0 Cele mai sim!le dintre ele sunt mul%imile ce con%in cIte
un singur vIrf al grafului( mul%imile formate din dou vIrfuri
adiacente 0a0
7ac cunoatem o clic oarecare a grafului( atunci totdeauna
!utem cerceta !osi#ilitatea eJtinderii ei din contul vIrfurilor rmase0
Aceast situa%ie conduce la no%iunea de clic maJimal i clic
maJim0
)+
De)ini/ia #.$.5. ,lica A se numete maximal/4 dac/ -n graf nu
exist/ o alt/ clic/ B astfel4 -nct B A .
De)ini/ia #.$.(. ; clic/ A se numete maxim/4 dac/ pentru
orice clic/ B din graf are loc inegalitatea
A B
.
"ig. '
Cardinalul clicii maJime a unui graf neorientat
4 U : 2 3 5
se
notea6 !rin
4 25
i se numete densitate a acestui graf0 7ensitatea
grafului !oate c!ta orice valoare cu!rins 8ntre . i n$numrul de
vIrfuri din graf0 @#servm c densitatea grafului !oate fi egal cu .
doar 8ntr$un singur ca6 ; cInd graful este vid0
7ac anali6m graful din fig0>( atunci o#servm c 8n calitate
de clici !ot fi considerate mul%imile5
{ }
{ }
{ }
{ }
{ } 0 ( ( (
( ( (
( ( (
( (
(
1 + - = -
+ - = =
= ) . >
- = )
. .
x x x x ,
x x x ,
x x x ,
x x ,
x ,

7intre aceste mul%imi numai ,


>
i ,
-
sunt clici maJimale( iar ,
-
este i maJim0 7eci !entru acest graf avem
= 4 2 5
0
Uor !utem o#serva c dac 8ntr$un graf 5 mul%imea de vIrfuri
A este clic( atunci 8n graful com!lementar 5 ( mul%imea A este
)1
x
.
x
3
x
1
x
+
x
-
x
=
x
)
x
>
sta#il interior0 &ste adevrat i afirma%ia invers0 Aceasta ne
!ermite s considerm adevrat urmtoarea egalitate
4 2 4 2
*
5 5
0 2Aici !rin 5 se notea6 graful com!lementar
grafului 504 Rela%ia dat ne !ermite s o#%inem unele estimri ale
densit%ii grafului
4 25
8n #a6a estimrilor numrului
4 2
*
5
0
7eseori solu%ionarea unor !ro#leme atIt cu caracter teoretic( cIt
i !ractic se reduce la determinarea mul%imilor de vIrfuri sta#ile
interior0 Bom descrie unele dintre aceste !ro#leme5
I. Kntre dou sta%ii A i B( conectate la o re%ea informa%ional( se
transmit nite mesaNe( codificate cu aNutorul sim#olurilor unui alfa#et
{ }
n
x x x 3 (000( (
) .

0 Kn tim!ul transmisiunii( din anumite motive( are


loc !ertur#area informa%iei( adic unele sim#oluri transmise din A !ot
fi confundate 8n sta%ia B cu alte sim#oluri0 Kn aceste condi%ii( este
necesar de sta#ilit o su#mul%ime de sim#oluri din 3( folosite la
codificarea mesaNelor transmise din A i care s garante6e
rece!%ionarea lor corect 8n B0 2&ste clar c !ro#lema are sens numai
8n ca6ul cInd cunoatem !erec'ile de sim#oluri ce !ot fi confundate
la rece!%ionarea mesaNului04
7re!t model matematic al !ro#lemei 8n cau6 !oate servi un
graf neorientat 5 cu mul%imea de vIrfuri
L (000( ( M
) . n
x x x 3
( 8n
care
i
x
O )
x
( dac i numai dac sim#olurile
i
x
i )
x
!ot fi
confundate la transmiterea mesaNelor din A 8n B0 "entru a o#%ine un
cod fr erori( adic un cod care garantea6 transmiterea corect a
mesaNelor( este suficient s folosim sim#olurile ce cores!und
vIrfurilor unei mul%imi sta#ile interior a grafului 50 7eoarece
fia#ilitatea oricrui cod 8ntr$o msur oarecare de!inde i de
numrul de sim#oluri utili6ate ale alfa#etului 3( vom folosi
sim#olurile ce cores!und vIrfurilor din mul%imea sta#il interior
maJim0 Kn acest ca6( este util s cunoatem numrul de sta#ilitate
intern
4 2
*
5
0
7eseori se recurge la o astfel de codificare a mesaNului( 8ncIt
teJtul transmis este format din cuvinte de aceeai lungime k0 Atunci
numrul cuvintelor diferite care !ot fi formate din sim#olurile
alfa#etului de codificare 3 i care nu !ot fi confundate la
)3
transmiterea informa%iei nu este mai mic decIt [ ]
k
54 2
*
0 7e
eJem!lu( dac graful model 5( construit 8n conformitate cu cele
descrise mai sus( este un ciclu sim!lu de lungimea - cu vIrfurile
. - = > ) .
O O O O O x x x x x x
( atunci
) 4 2
*
5
0 Kn calitate de mul%ime
sta#il interior maJim !oate servi mul%imea
{ }
> .
( x x
0 7in
sim#olurile x
.
( x
>
!utem forma = cuvinte diferite de lungimea )5
> > . > > . . .
i ( ( x x x x x x x x
( care nu vor fi confundate 8ntre ele la
transmiterea informa%iei0 Kn realitate numrul cuvintelor rece!%ionate
corect la sta%ia B este mai mare decIt [ ]
k
54 2
*
0 Astfel( !entru
eJem!lul descris eJist - cuvinte inconfunda#ile5
= - ) = - > > ) . .
i ( ( ( x x x x x x x x x x
0 La o anali6 mai minu%ioas
ne !utem uor da seama c de fa!t numrul cuvintelor
inconfunda#ile de lungimea k ce !ot fi formate din sim#olurile
mul%imii
{ }
n
x x x 3 (000( (
) .

este egal cu numrul de sta#ilitate


intern a grafului [ ]
k
5 ( a crui mul%ime de vIrfuri este determinat
de !rodusul carte6ian al mul%imii 3 luat de k ori( iar dou vIrfuri
4 (000( ( 2
) . k
u u u
i
4 (000( ( 2
) . k
v v v
sunt adiacente( dac u numai
dac 8n 5 avem
i i
v u
sau
i i
v u O
!entru orice
k i ( .
0 &ste
evident rela%ia [ ] ( )
k
k
5 5 44 2 2
* *
0
II. "entru efectuarea a n lucrri( o institu%ie folosete o mul%ime
oarecare de resurse dis!oni#ile
L (000( ( M
) . 1
r r r G
0 Se cunoate c
efectuarea unei lucrri
n i x
i
( . (
necesit utili6area unei
su#mul%imi de resurse
G G
i

0 @rice resurs
n ) r
)
( . (
( nu !oate fi
utili6at concomitent !entru dou sau mai multe lucrri0 Se cere de
determinat numrul maJim de lucrri( care !ot fi reali6ate 8n !aralel
28n acelai tim!( concomitent40
Kn ca6ul acestei !ro#leme( se construiete modelul matematic 8n
forma unui graf neorientat 5 8n care dou vIrfuri ) i
x x (
se
consider adiacente( dac i numai dac

) i
G G
T0 Kn aceste
condi%ii orice mul%ime de vIrfuri sta#il interior din 5 re!re6int o
totalitate de lucrri care !ot fi reali6ate 8n !aralel0 "rin urmare(
)/
numrul maJim de lucrri ce !ot fi reali6ate 8n acelai tim! este egal
cu numrul de sta#ilitate intern
4 2
*
5
( iar vIrfurile mul%imii
sta#ile interior maJime cores!und acelor lucrri0
III. Fie
4 (000( ( 2
) . n
x x x f
o func%ie #oolean( adic atIt
func%ia f4 cIt i argumentele sale
n
x x x (000( (
) .
iau valori din
mul%imea
L . ( * M
0 S notm !rin
L (000( ( M
* *
)
*
.
*
n
x x x x
i
L (000( ( M
. .
)
.
.
.
n
x x x x
dou cortegii de valori ale varia#ilelor func%iei
f0 2Aceste cortegii mai !ot fi !rivite i ca doi vectori( coordonatele
crora sunt egale cu * sau .40 Bom s!une c cortegiul
*
x se afl 8n
rela%ia de !receden% cu cortegiul
.
x ( i vom nota
. *
x x ( dac
. *
i i
x x
(
n i ( .
0 @ func%ie #oolean f se numete monoton( dac
!entru oricare dou cortegii de valori
.
x i
)
x este adevrat
im!lica%ia
44 2 4 2 2 4 2
. ) . )
x f x f x x
0
Cortegiul
4 (000( ( 2
) . n
x x x x
se numete unitate a func%iei
#ooleene f( dac
. 4 2 x f
i unitate inferioar/4 dac !entru oricare
alt cortegiu
x 7
are loc egalitatea
* 4 2 7 f
0 La rIndul su( un
cortegiu
4 (000( ( 2
) . n
x x x x
se numete .erou al func%iei #ooleene f(
dac
* 4 2 x f
( i .erou superior4 dac !entru oricare alt cortegiu 7
cu !ro!rietatea
7 x
are loc egalitatea
. 4 2 7 f
0
&ste evident c orice func%ie monoton se determin 8n mod
univoc de mul%imea unit%ilor sale inferioare 2sau de mul%imea
6erourilor sale su!erioare40
Kn ca6ul unui cortegiu #inar
4 (000( ( 2
) . n
x x x x
( numrul

n
i
i
x
.
se numete norm/ a acestui cortegiu( iar func%ia monoton(
!entru care normele unit%ilor inferioare sunt egale cu doi sau cu
func%ia identic egal cu 6ero( se numete funcie grafic/0
"entru o func%ie grafic
4 (000( ( 2
) . n
x x x f
definim un graf
neorientat f
5
cu mul%imea de vIrfuri
L (000( ( M
) . n
v v v :
8n care
>*
i
v
O )
v
( dac i numai dac eJist un cortegiu
4 (000( ( 2 X
X X
)
X
. n
x x x x

cu !ro!riet%ile5
a4
)
.
X

n
i
i
x
:
#4
X x
este unitate a func%iei f:
c4
.
X X

) i
x x
0
Uor se !oate o#serva( c dac
.
,
este vectorul caracteristic al
unei su#mul%imi de vIrfuri : E ( atunci
* 4 2
.
, f
( dac i numai
dac E este o mul%ime sta#il interior 8n f
5
0 "rin urmare( 6erourile
func%iei grafice !ot fi inter!retate dre!t vectori caracteristici ai
mul%imilor de vIrfuri sta#ile interior din f
5
0
La rIndul su( !entru orice graf 54 eJist o func%ie grafic
astfel( 8ncIt f
5
este i6omorf cu 50 Kntr$adevr( 8n ca6ul grafului vid
!utem considera
* f
0 Kn ca6ul grafului diferit de graful vid( 8n
calitate de func%ie grafic !utem considera func%ia determinat de
unit%ile inferioare( care re!re6int vectorii caracteristici ai tuturor
!erec'ilor de vIrfuri adiacente0
#.$.$. M+0e*u* -ate-atic a* 1r+4*e-ei 0e 0eter-inare
a -u*/i-ii 0e <=r)uri .ta4i*e interi+r -a5i-e
"ro#lema determinrii mul%imii de vIrfuri sta#ile interior
maJime 8ntr$un graf neorientat !oate fi tratat dre!t o !ro#lem de
o!timi6are( ceea ce !ermite( la rIndul su( crearea unui model de
!rogramare matematic0 Kn cele ce urmea6( vom anali6a dou dintre
aceste modele0
A. 7u! cum a mai fost men%ionat( orice su#mul%ime de vIrfuri
3 B !oate fi descris 8n mod univoc !rintr$un vector #inar
B
,

numit vector caracteristic al mul%imii B0 Mai frecvent 8ns la
studierea grafurilor se folosesc diferite matrici0
"entru descrierea unei mul%imi de vIrfuri sta#ile interior( vom
folosi o matrice !tratic

de dimensiunea
n n
( cu elementele
>.

'

0 contrar ca6 8n *(
( dac ( . 4 B x x
) i
i)

Kn aceast matrice( evident( !entru orice vIrf


B x
i

( vom avea
.
ii

0 Astfel cardinalul mul%imii B este egal cu numrul de unit%i


de !e diagonal !rinci!al din

0
"ig. 3
E5e-1*u. Mul%imea de vIrfuri sta#il interior
{ }
- = )
( ( x x x B

a grafului din fig0= se descrie !rin matricea
0 . . * . *
. . * . *
* * * * *
. . * . *
* * * * *

,
_

?
Se tie Y)Z c dac o matrice #inar
n ) i
i)
( . ( 4( 2

re!re6int o mul%ime sta#il interior a unui graf 5( iar
n ) i
i)
a A
( . (
4 2

este matricea de adiacen% a acestui graf( atunci sunt


adevrate urmtoarele dou egalit%i5
>)
x
.
x
)
x
>
x
-
x
=
.4
*
i) i)
a
(
n ) i ( . (
:
)4 i) )) ii

(
n ) i ( . (
0
7u! cum uor !oate fi o#servat( cele
)
n egalit%i de !rimul
ti! sunt ec'ivalente cu urmtorul sistem liniar din n ecua%ii omogene5

'

+ + +
+ + +
+ + +
0 * 000

( * 000
( * 000
) ) . .
) ) )) )) ). ).
. . .) .) .. ..
nn nn n n n n
n n
n n
a a a
a a a
a a a




2)0)4
La rIndul su( !entru ca o matrice #inar
n ) i
i)
( . ( 4( 2

s cores!und unei mul%imi sta#ile interior a unui graf 5( re!re6entat
!rin matricea de adiacen% n ) i
i)
a A
( . (
4 2

( !e lIng ecua%iile
sistemului 2)0)4 ea tre#uie s mai satisfac i egalitatea )4 descris
mai sus( adic
i) )) ii

(
n ) i ( . (
0
Aceast ecua%ie !oate fi 8nlocuit !rin dou inecua%ii liniare
i)
)) ii

+
)
(
n ) i ( . (
:
i) )) ii
+ .
(
n ) i ( . (
0
Astfel o#%inem !ro#lema de !rogramare liniar5 S se
determine valorile necunoscutelor
n ) n i
i)
( . ( ( . (
( care
maJimi6ea6 valoarea func%iei

n
i
ii
E
.

2)0>4
cu restric%iile5
>>

'

+

+
+ + +
+ + +
+ + +
0 n .( N i( ( .
( n .( N i( (
)
( * 000

( * 000
( * 000
) ) . .
) ) )) )) ). ).
. . .) .) .. ..
i) )) ii
i)
)) ii
nn nn n n n n
n n
n n
a a a
a a a
a a a






2)0=4
{ } . ( *
i)

(
n i ( .
(
n ) ( .
0 2)0-4
Mul%imea de solu%ii admisi#ile( determinat de sistemul 2)0=4 i
condi%iile 2)0-4 nu este vid i orice solu%ie admisi#il i nenul este o
matrice #inar( care re!re6int o mul%ime de vIrfuri sta#il interior a
grafului 5( descris de matricea de adiacen% n ) i
i)
a A
( . (
4 2

2ve6i
Y)Z40 "rin urmare( !ro#lema 2)0>4$2)0-4 !oate fi !rivit dre!t model
matematic al !ro#lemei de determinare a mul%imii de vIrfuri sta#il
interior maJim 8ntr$un graf0
B. Un alt model al !ro#lemei studiate( re!re6entat de asemenea
ca !ro#lem de !rogramare liniar cu varia#ile #ooleene( se o#%ine
!rin utili6area matricei de inciden% a grafului0
"entru graful
4 : 2 2 3 5
cu n vIrfuri i m muc'ii( vom nota
!rin

B
matricea trans!us a matricei de inciden%0 "rin urmare(

B
este o matrice de dimensiune
n m
( elementele creia sunt

'

0 contrar ca6 8n ( *
( incidente sunt vIrful i u muc'ia dac ( .
) i
i)
x
b
>=
7ac C este o mul%ime de vIrfuri sta#il interior a grafului 5(
atunci vom introduce varia#ilele

'

0 contrar ca6 8n ( *
( multimii a!artine vIrful dac ( . C x
x
)
)
i

'

0 contrar ca6 8n ( *
( multimii a!artine nu
u muc'iei ile eJtremitJ dintre una nici dac ( .
C 2
i
i
Astfel( o mul%ime de vIrfuri sta#il interior C !oate fi descris
!rintr$un vector #inar
4 (000( : (000( 2 4 2
. . m n
2 2 x x C H
0 Acest
vector este o solu%ie admisi#il a urmtoarei !ro#leme de !rogramare
matematic5


n
)
)
x E
.
maJ
2)0+4
m i 2 x b
n
)
i ) i)
( . ( .
.
+

( 2)014

L . ( * M
)
x
(
2)034

L . ( * M
)
2
0 2)0/4
&ste adevrat i afirma%ia reci!roc5 orice solu%ie admisi#il a
!ro#lemei 2)0+4$2)0/4 re!re6int o mul%ime de vIrfuri sta#il interior
a unui graf
4 : 2 2 3 5
(
n 3
(
m U
4 matricea de inciden% a
cruia este

B B 4 2
0
>-
inInd cont de func%ia$o#iectiv 2)0+4( re6ult c !ro#lema
o#%inut 2)0+4$2)0/4 este modelul matematic al !ro#lemei de
determinare a mul%imii de vIrfuri sta#ile interior maJimea unui graf0
#.$.#. A*g+rit-u* recur.i< a* *ui Be0nare@ ,i Tau*4ee
"entru graful
4 : 2 2 3 5
cu n vIrfuri( vom nota !rin
k
3

mul%imea !rimelor k vIrfuri( adic
{ }
k k
x x x 3 (000( (
) .

0 "rin
k
(

vom nota familia mul%imilor sta#ile interior maJimale 8n su#graful
generat de mul%imea de vIrfuri
k
3
( iar !rin
k
I
; mul%imea tuturor
vIrfurilor din
k
3
( neadiacente vIrfului
k
x
0
2
{ }
k k k
x 7 7 I Irfului adiacent v este nu 5
0
Folosind nota%iile men%ionate( toate mul%imile sta#ile interior
maJimale !ot fi gsite cu aNutorul urmtorului algoritm5
8a.u* *. FiJm
{ }
. .
x (
{ }
. .
x ( (
{ }
. .
x I 0 Considerm
. k 0
8a.u* #. FiJm mul%imea
{ }
{ }

'

0 adiacente sunt nu ( dac ( (


( O dac (
) . ) .
) . )
)
x x x x
x x x
I
8a.u* '. Construim familia de mul%imi
{ M I M C J
k k
5
.
X
+

este un element al familiei
}
k
(
0
8a.u* 3. 7eterminm
k
J
$ familia tuturor mul%imilor
maJimale din
X
k
J
0
>+
8a.u* 5. Construim familia de mul%imi
X
. + k
(
!rin eJaminarea
fiecrui element M din
k
(
5
a> dac
. +

k
I M
( atunci
{ }
X
. . + +

k k
( x M
:
4> dac
. +

k
I M
( atunci
X
. +

k
( M
i dac 8n acest ca6 se
res!ect i condi%ia
k k
J I M
+.

( atunci se mai consider c


{ }
X
. . .
4 2
+ + +

k k k
( I M x
0
8a.u* (. 7eterminm
. + k
(
$ familia tuturor mul%imilor
maJimale din
X
. + k
(
0
8a.u* 7. 7ac . < n k ( atunci considerm . + k k i ne
8ntoarcem la eJecutarea !asului >0 Kn ca6 contrar(
n
(
con%ine toate
mul%imile maJimale sta#ile interior 8n graful 50 STO8.
S anali6m algoritmul descris( luInd 8n calitate de eJem!lu
graful din fig0-0
"ig. 5
>1
x
.
x
-
x
=
x
)
x
>
Re6ultatele !entru fiecare itera%ie k a algoritmului <ednare[ i Taul#ee sunt !re6entate 8n ta#elul .0
Familia (
-
con%ine toate mul%imile maJimale sta#ile interior ale grafului studiat0 @#servm c !entru acest
graf numrul de sta#ilitate intern este
> 4 2
*
5
0
"entru graful din fig0-( eJist dou mul%imi sta#ile interior maJime
L ( ( M
- = . .
x x x M
i
L ( ( M
- = ) )
x x x M
0 7u! cum se vede din ta#elul .( am#ele mul%imi a!ar%in familiei
-
(
0
Ta4e*u* $
[
. + k
I
X
k
J
k
J
X
. + k
(
. + k
(
.
{ }
) )
x I { } T
X
.
J { } T
.
J
{ } { } { }
) .
X
)
( x x ( { } { } { }
) . )
( x x (
)
{ }
> . >
( x x I
{ } { }
.
X
)
J T( J { } { }
. )
J T( J { } { } { } { }
> . > )
X
>
( ( ( x x x x ( { } { } { }
> . ) >
( ( x x x (
>
{ }
= ) . =
( ( x x x I { } { } { }
) .
X
>
( x x J { } { } { }
) . >
( x x J
LL ( M
L( ( M ( ( MM
= )
= . > .
X
=
x x
x x x x (
LL ( M
L( ( M L( ( MM
= )
= . > . =
x x
x x x x (
=
{ }
- = ) . -
( ( ( x x x x I
{ } { } {
{ }}
= )
= . .
X
=
(
( ( (
x x
x x x J { } { { }}
= ) = .
X
=
( ( ( x x x x J { } { } {
{ }}
- = )
- = . > .
X
-
( (
( ( ( ( (
x x x
x x x x x ( { } { } {
{ }}
- = )
- = . > . -
( (
( ( ( ( (
x x x
x x x x x (
>
3
#.$.'. A*g+rit-u* Ma*grange
#.$.'.$. N+/iuni 1re*i-inare
Fie M o matrice #inar( finit( de dimensiune
n m
( cu
mul%imea de linii
L (000( ( M
) . m
l l l (
i mul%imea de coloane
L (000( ( M
) . m
c c c ,
0 Bom nota !rin
4 ( 2 B A f
matricea f( format
din elementele de la intersec%ia liniilor J A i a coloanelor K B 0
Fie acum
.
f
i
)
f
dou su#matrice ale matricei M(
determinate de !erec'ile de mul%imi de linii i coloane
) ( . 4 ( 2 i B A
i i

4 ( 2 2
. . .
B A f
i
44 ( 2
) ) )
B A f
0
De)ini/ia #.$.7. Matricea
.
f
se numete submatrice a
matricei
)
f
4 dac/
) .
A A
4
) .
B B
i se notea./
) .
f f
.
De)ini/ia #.$.9. Cubmatricea f a matricei M se numete
complet/4 dac/ toate elementele din f sunt egale cu 1.
De)ini/ia #.$.%. Cubmatricea f a matricei M se numete
principal/4 dac/ ea este complet/ i -n M nu exist/ o alt/ submatrice
complet/
\ f
astfel4 -nct
\ f f
.
De)ini/ia #.$.$:. Lamilia de submatrice
{ }
p
f f f (000( (
) .
C

din M se numete acoperire a matricei M4 dac/ orice element egal
cu 1 din M aparine cel puin unei submatrice din familia C.
&ste evident c !entru orice matrice #inar( totdeauna eJist o
aco!erire de su#matrice0 @ aco!erire trivial ar fi determinat de
su#matricele formate din fiecare element
.
i)
M
0 Kn acelai tim!(
este clar c !utem vor#i i des!re aco!eririle minimale i minime(
determinarea crora devine o !ro#lem de o!timi6are0 2"entru astfel
de !ro#leme( de asemenea( !utem o#%ine diverse modele 8n forma de
!ro#lem de !rogramare matematic04
>/
E5e-1*u. Fie dat matricea
+ - = > ) .
-
=
>
)
.
* . * . * *
. * . * . .
* * * . * .
* * . * . .
. * * . * .
c c c c c c
l
l
l
l
l
M

,
_

liniile creia sunt notate !rin


- = > ) .
( ( ( ( l l l l l
iar coloanele ; !rin
+ - = > ) .
( ( ( ( ( c c c c c c
. Kn calitate de su#matrice ale matricei M4
vom alege urmtoarele5
{ } { } ( )
{ } { } ( )
{ } ( )
{ } { } ( )
{ } { } ( )
{ } { } ( )
{ } { } ( ) 0 ( (
( ( ( (
( ( ( ( (
( ( (
( T ( ( ( (
( ( ( ( (
( ( ( (
- > - 1
+ . = . +
= ) . - = -
. > . =
= > ) . >
- = - > . )
> . > . .
c c l f
c c l l f
c c c l l f
c l l f
l l l l f
c c l l l f
c c l l f

"rintre aceste su#matrice( matricele


1 + - = .
( ( ( ( f f f f f
sunt
com!lete( iar
1 + - .
( ( ( f f f f
sunt !rinci!ale0 Totodat( familia
{ }
1 + - .
( ( ( f f f f F
formea6 o aco!erire a matricei M0
Notm !rin
X
M
familia tuturor su#matricelor com!lete din M0
"entru oricare dou su#matrice
4 ( 2
. . .
B A f
i
4 ( 2
) ) )
B A f
( definim dou o!era%ii

X
i

X
5
4 ( 2
) . ) .
X
) .
B B A A f f


(
=*
4 ( 2
) . ) .
X
) .
B B A A f f


0
Uor se !oate de artat c
X
X
) .
M f f

i
X
X
) .
M f f

0 Structura R 2
X
M
(

X
i

X
4
este o
latice distri#utiv0 Se verific cu uurin% c o!era%iile definite
!osed !ro!riet%ile de asociativitate( comutativitate( idem!oten%(
a#sor#%ie i distri#utivitate0 S demonstrm c o!era%ia

X
este
distri#utiv 8n ra!ort cu o!era%ia

X
0
Kntr$adevr(
( ) ( )
( ) [ ] ( ) ( )
( )
( ) ( )
0
4 ( 2 4 ( 2 4 ( 2 4 ( 2
4 2 4( 2 4 2 4( 2
4 2 4 2 4( 2 4 2
( ( (
4 ( 2 ( (
X X
> .
X
) .
X X
> > . .
X
) ) . .
X
> . > . ) . ) .
> . ) . > . ) .
> ) . > ) .
X
> ) > ) . .
X X
> > ) . . .
X X
> ) .





,
_

,
_

,
_

,
_

1
]
1

,
_

f f f f
B A B A B A B A
B B A A B B A A
B B B B A A A A
B B B A A A B B A A B A
B A B A B A f f f
7eoarece M este o matrice finit( re6ult c i laticea este
finit( deci are un element nul i un element universal0
7ac
.
f
(
X
)
M f i
) .
f f
( atunci au loc !ro!riet%ile5

X
) ) .
f f f
i

X
) ) .
f f f
0
Kntr$adevr( ) ) . ) . ) .
X
) .
4 ( 2 4 ( 2 f B A B B A A f f

i
) . ) ) . ) .
X
) .
4 ( 2 4 ( 2 f B A B B A A f f

0
=.
7e aici re6ult( 8n !articular( c dac
)
f
nu este o su#matrice
!rinci!al( atunci nici

X
) .
f f
( nici

X
) .
f f
nu sunt
su#matrice !rinci!ale0
Kn #a6a celor eJ!use mai sus( !utem afirma c o aco!erire
{ }
p
f f f , (000( (
) .

a unei matrice M generea6 o su#latice \ a


lui ( con%inInd toate su#matricele !rinci!ale din M0
#.$.'.#. De.crierea a*g+rit-u*ui
Fie A matricea de adiacen% a unui graf neorientat
4 : 2 2 3 5
( iar A ; matricea com!lementar a acesteia0 2&lementele i)
a
ale
matricei A se calculea6 8n #a6a elementelor i)
a
ale matricei A
du! formula i) i)
a a .
04
Algoritmul Malgrange este un algoritm iterativ de construire a
tuturor su#matricelor !rinci!ale !tratice ale lui A ( 8n #a6a crora se
determin mul%imile maJimale sta#ile interior ale grafului 50
8a.u* $. Construim o aco!erire ar#itrar
*
,
a matricei A 0 7e
o#icei 8n calitate de aco!erirea
*
,
se ia familia tuturor
su#matricelor com!lete din A de forma
4 ( 2
i i i
B A f
( unde
.
i
A
( iar
i
B
este format din coloanele matricei A ( ce con%in
unitatea 8n linia
i
A
0 Considerm
* p
0
8a.u* #. Construim familia
{ }
) i i ) p ) p i p
f f f f , f , f 3 8ncIt astfel( ( 5
Aadar( p
3
este familia tuturor su#matricelor com!lete din
p
,
( care se con%in 8n alte su#matrice ale lui p
,
0
=)
8a.u* '. Construim familia
4 P 2
p p
3 ,
de su#matrice( o#%inute
!rin a!licarea am#elor o!era%ii

X
i

X
tuturor !erec'ilor !osi#ile de
matrice ) i
f f (
din
p p
3 , P
( cu condi%ia ca aceste elemente noi s nu
se con%in 8n su#matricele din
p p
3 , P
0
8a.u* 3. Formm aco!erirea de matrice
4 P 2 4 P 2
. p p p p p
3 , 3 , ,
+
0
8a.u* 5. 7ac p p
, ,
+. ( atunci considerm
. + p p
i
trecem la eJecutarea !asului )0 Kn ca6 contrar p
,
con%ine toate
su#matricele !rinci!ale ale matricei A 0
8a.u* (. Construim o familie nou F 8n care includem
su#matricele !tratice maJimale ale su#matricelor !rinci!ale din
p
,
( res!ectInd condi%ia ca fiecare dintre acestea s nu se con%in 8n
alt su#matrice !tratic din F. BIrfurile ce cores!und liniilor
2coloanelor4 matricelor familiei F formea6 o mul%ime sta#il
interior0 Astfel( numrul tuturor mul%imilor sta#ile interior este egal
cu
F
0
E5e-1*u. Bom construi toate mul%imile sta#ile interior
maJime 8n graful 5 din fig0+( 8n conformitate cu algoritmul descris0
=>
a
b
c
f
d
e
"ig. (
Matricea de adiacen% A a grafului i com!lementara ei A
sunt5
f e d c b a
f
e
d
c
b
a
A

,
_

* . * . * *
. * . . . .
* . * . . *
. . . * * .
* . . * * .
* . * . . *
f e d c b a
f
e
d
c
b
a
A

,
_

. * . * . .
* . * * * *
. * . * * .
* * * . . *
. * * . . *
. * . * * .
"entru a sim!lifica descrierea formal a matricelor de ti!ul
( ) ( ) L ( M L( M ( L ( ( M L( ( M
) .
d a a f e d c b a f
etc0 ( folosite 8n
algoritmul Malgrange( vom utili6a transcri!%ia
( ) ( ) ad a f cde ab f ( ( (
) .

0
==
Aco!erirea ini%ial
*
,
a matricei A este5
{ } 4 ( 2 4( ( 2 4( ( 2 4( ( 2 4( ( 2 4( ( 2
*
abdf f e e adf d bc c bcf b adf a ,
0
Kn acest ca6

*
3
T i( !rin urmare(
* * *
P , 3 , 0 @#%inem5
{
}: ( (
( ( ( ( (
* *
Bdf4adf? Bcf4b? Bbf4bf?
Bbd4f? Bbc4bc? Baf4adf? Bad4adf? Bab4f? ? M NB,
2de eJem!lu( su#matricea 2ab( f4 se o#%ine astfel5
4 ( 2 4 ( 2 4 ( 2 4 ( 2 f ab bcf adf b a bcf b adf a
40
Formm aco!erirea
4 2 4 2
* * * * .
3 , 3 , , U
0
{
}0 4 ( 2 4( ( 2 4( ( 2 4( ( 2 4( ( 2 4( ( 2 4( ( 2
4( ( 2 4( ( 2 4( ( 2 4( ( 2 4( ( 2 4( ( 2 4( ( 2
.
adf df b cf bf bf f bd bc bc adf af adf ad
f ab abdf f e e adf d bc c bcf b adf a ,
7eterminm mul%imile5
{ } 4 ( 2 4( ( 2 4( ( 2
.
adf d bc c adf a 3
(
{
}0 4 ( 2 4( ( 2 4( ( 2 4( ( 2 4( ( 2
4 ( 2 4( ( 2 4( ( 2 4( ( 2 4( ( 2 4( ( 2
. .
adf df b cf bf bf f bd bc bc
adf af adf ad f ab abdf f e e bcf b 3 ,
Formm aco!erirea
4 2 4 2
. . . . )
3 , 3 , , U
0
{
}0 4 ( 2 4( ( 2 4( ( 2 4( ( 2 4( ( 2
4( ( 2 4( ( 2 4( ( 2 4( ( 2 4( ( 2 4( ( 2
4( ( 2 4( ( 2 4( ( 2 4( ( 2 4( ( 2 4( ( 2
)
f abdf adf adf f bdf b bcf f abf
f abd adf df b cf bf bf f bd bc bc
adf af adf ad f ab abdf f e e bcf b ,
7eterminm mul%imile5
{
}( 4 ( 2 4( ( 2 4( ( 2 4( ( 2
4( ( 2 4( ( 2 4( ( 2 4( ( 2 4( ( 2
)
f bdf f abf f abd adf df
b cf f bd adf af adf ad f ab 3
=-
{
}0 4 ( 2 4( ( 2 4( ( 2
4( ( 2 4( ( 2 4( ( 2 4( ( 2 4( ( 2
) )
f abdf adf adf b bcf
bf bf bc bc abdf f e e bcf b 3 ,
7eoarece
4 2
) )
3 ,
T( o#%inem
) ) ) ) ) ) >
4 2 4 2 3 , 3 , 3 , , U
(
de unde re6ult c

>
3
T i !rin urmare
> =
, ,
0
Kn conformitate cu algoritmul descris( aco!erirea matricei A(
ce con%ine toate su#matricele !rinci!ale( este5
{
}0 4 ( 2 4( ( 2 4( ( 2 4( ( 2
4( ( 2 4( ( 2 4( ( 2 4( ( 2
>
f abdf adf adf b bcf bf bf
bc bc adbf f e e bcf b ,
&Jtragem din fiecare su#matrice !rinci!al su#matricea
!tratic maJimal i le selectm !e acelea care nu se con%in 8n alte
su#matrice !tratice0 @#%inem familia
{ } 4 ( 2 4( ( 2 4( ( 2 4( ( 2 adf adf bf bf bc bc e e F 0
Kn #a6a re6ultatului o#%inut( !utem afirma c familia tuturor
mul%imilor sta#ile interior a grafului din figura + este5
{ } { } { } { } { } f d a f b c b e ( ( ( ( ( ( ( S
0
Mul%imea sta#il interior maJim este
{ } f d a ( (
i !rin urmare
> 4 2
*
5
0
#.$.3. A*g+rit-u* Br+n ,i Aer4+.cB
#.$.3.$. N+/iuni 1re*i-inare
=+
Algoritmul !ro!us de ctre C0<ron i E0Ger#osc' 8n anul ./1>
re!re6int o modificare a algoritmului de triere( ce folosete ar#orele
de cutare0 Ca re6ultat al a!licrii acestui algoritm( !entru un graf
neorientat 5OB3@2?4 o#%inem lista tuturor mul%imilor sta#ile interior
maJimale0
La fiecare eta! k de reali6are a algoritmului( se construiesc
dou mul%imi
k
C
i
k
F
0 Mul%imea
k
C
re!re6int mul%imea de
vIrfuri sta#il interior( o#%inut la eta!a k( iar
k
F
re!re6int
mul%imea vIrfurilor din graf( neadiacente vIrfurilor din
k
C
0 "rin
urmare( !utem considera 4 4 2 2 P
k k k
C C 3 F U 0 Adugarea oricrui
vIrf din
k
F
la
k
C
!ermite s eJtindem mul%imea sta#il interior
curent i s o#%inem la eta!a urmtoare o mul%ime nou
. + k
C
0
"entru organi6area !rocesului de !arcurgere 8n ar#orele de
cutare( vom re!re6enta mul%imea
k
F
dre!t reuniune a dou
mul%imi

k
F
i
+
k
F
( considerInd c 8n

k
F
sunt incluse acele vIrfuri
din
k
F
( care 8n !rocesul de cutare au fost folosite !entru eJtinderea
mul%imii
k
C
( iar
+

k k k
F F F P
0 Cu alte cuvinte( la eta!a res!ectiv
+
k
F
re!re6int mul%imea vIrfurilor( care !oten%ial !ot fi folosite
!entru eJtinderea mul%imii sta#ile interior
k
C
0
Astfel( dac !entru eJtinderea mul%imii
k
C
se alege vIrful
+

k i
F x
k
( atunci la eta!a urmtoare . + k mul%imile curente
k
C
(

k
F
i
+
k
F
se modific 8n modul urmtor5
{ }
k
i k k
x C C
+.
(
4 2 P
.
k
i k k
x F F
(
=1
{ } ( )
k k
i i k k
x x F F 4 2 P
.

+ +
+
0
"entru a o#%ine toate mul%imile sta#ile interior folosind ar#orele
de cutare( la unele eta!e ale algoritmului este necesar de efectuat
!asul de 8ntoarcere( care const 8n eJcluderea vIrfului
k
i
x
din
. + k
C

i revenirea la
k
C
( !recum i transferul lui
k
i
x
din
+
k
F
8n

k
F
0
Kn conformitate cu cele descrise( re6ult c mul%imea de vIrfuri
sta#il interior
k
C
este maJimal numai 8n ca6ul cInd
+
k
F
RT0 7ac
8ns
T

k
F
( atunci aceasta 8nseamn c la o eta! oarecare
anterioar mul%imea
k
C
a fost eJtins din contul unor vIrfuri situate
acum 8n

k
F
i( !rin urmare( ea nu !oate fi considerat dre!t
mul%ime maJimal 8n graf0 7e aici re6ult ; condi%ia necesar i
suficient !entru ca mul%imea de vIrfuri sta#il interior s fie
maJimal este

+
k k
F F
T0
Kn acelai tim!( este a#solut clar c dac eJist un vIrf

k
F x
(
astfel 8ncIt

+
k
F x 4 2
T( atunci indiferent de fa!tul care dintre
vIrfurile mul%imii
+
k
F
este ales !entru eJtinderea mul%imii
k
C
( la
orice !as urmtor
k p >
nu vom o#%ine res!ectarea condi%iei

k
F
RT0 Aceasta 8nseamn c condi%ia


k
F x
astfel 8ncIt

+
k
F x 4 2
T 2X4
este suficient !entru a efectua !asul de 8ntoarcere( deoarece !e
ramura dat a ar#orelui de cutare nu vom o#%ine mul%ime sta#il
interior maJimal 8n #a6a mul%imii curente
k
C
0
"entru a eJclude !arcurgerea unei !r%i inutile a ar#orelui de
cutare( care la sigur nu con%ine nici o mul%ime sta#il interior
maJimal( este im!ortant de a o#%ine condi%ia suficient a !asului de
=3
8ntoarcere cIt mai re!ede !osi#il0 Kn acest sco!( se va alege 8n mod
s!ecial vIrful din
+
k
F
!entru eJtinderea mul%imii
k
C
0 7ac condi%ia
!asului de 8ntoarcere nu are loc( iar !entru eJtinderea mul%imii
k
C

se alege un vIrf oarecare
+

k i
F x
k
( atunci eJist un vIrf

k k
F .

astfel 8ncIt
+

k k i
F . x
k
4 2
0 Kn condi%iile efecturii acum a !asului
de 8ntoarcere( valoarea mrimii
+

k k k
F . . 4 2 4 2
se va micora eJact cu o unitate( ceea ce va urgenta res!ectarea
condi%iei 2X40 Astfel( la alegerea vIrfului
k
i
x
( folosit !entru
eJtinderea mul%imii sta#ile
k
C
( se va cuta mai 8ntIi un vIrf

k
F xX
cu valoare cIt mai mic a mrimii
+

k
F x x X4 2 X4 2
0
&ste im!ortant s cunoatem ce condi%ie tre#uie s se res!ecte
!entru atingerea sco!ului indicat0
BIrful
k
i
x
se va alege acum 8n mod ar#itrar din mul%imea
+
k
F x X4 2
0 @ astfel de alegere a vIrfului
k
i
x
va gr#i
8nde!linirea condi%iei 2X4 !entru efectuarea !asului de 8ntoarcere0
7eoarece la efectuarea !asului de 8ntoarcere vIrful
k
i
x
( care a
fost folosit !entru eJtinderea mul%imii
k
C
( trece din
+
k
F
8n

k
F
( s$
ar !utea 8ntIm!la ca mrimea
4 2
k
i
x
acum s fie mai mic decIt
X4 2x
0 "rin urmare( 8n continuare se va %ine cont de aceast situa%ie
la alegerea vIrfului

k
F xX
0
#.$.3.#. De.crierea a*g+rit-u*ui
8a.u* $. Considerm ini%ial

* *
F C
T(
3 F
+
*
( * k 0
=/
8a.u* #. Kn conformitate cu cele descrise anterior( alegem un
vIrf
+

k i
F x
k
i formm mul%imile
k
i k k
x C C
+.
(
4 2 P
.
k
i k k
x F F

+
(
k k
i i k k
x x F F 4 2 P
.

+ +
+
0
Kn acela%i tim!( vom !stra nesc'im#ate i mul%imile
+
k
F
i

k
F
0 Considerm . + k k 0
8a.u* '. 7ac


k
F x
astfel 8ncIt

+
k
F x 4 2
T( adic are
loc condi%ia suficient !entru efectuarea !asului de 8ntoarcere( atunci
trecem la !asul -0 Kn ca6 contrar( trecem la !asul =0
8a.u* 3. 7ac

+
k k
F F
T( atunci ti!rim mul%imea
k
C
ca
mul%ime sta#il interior maJimal i trecem la !asul -0 7ac
+
k
F
RT(
iar

k
F
T( atunci trecem la !asul -0Kn ca6 contrar( trecem la !asul
)0
8a.u* 5. Considerm . k k i eliminm vIrful
k
i
x
din
. + k
C
( o#%inInd mul%imea
k
C
0 Modificm mul%imile vec'i
+
k
F
i

k
F
!rin eJcluderea vIrfului
k
i
x
din
+
k
F
i includerea lui 8n

k
F
5
-*
k
i k k
x F F P
+ +
(
k
i k k
x F F

0
7ac * k i

+
*
F
T( atunci aceasta 8nseamn toate
mul%imile
sta#ile interior maJimale ale grafului
4 : 2 2 3 5
au fost gsite 8n
!rocesul reali6rii algoritmului0 STO80 Kn ca6 contrar( trecem 8n
continuare la reali6area !asului >0
Algoritmul Bron i $erbosc% a fost testat !e un numr mare de
grafuri neorientate i s$a constatat c tim!ul necesar !entru
construirea tuturor mul%imilor de vIrfuri sta#ile interior este a!roa!e
constant i se modific neesen%ial odat cu creterea dimensiunii
grafului0 Aceasta ne !ermite s considerm c algoritmul dat este
efectiv0
#.#. Mu*/i-i 0e <=r)uri .ta4i*e e5teri+r
De)ini/ia #.#.$. Cubmulimea de vrfuri 3 A a unui graf 5
se numete stabil/ exterior4 dac/ pentru oricare vrf
A 3 7 P
exist/
un vrf A x astfel -nct
x 7 O
.
Conform defini%iei( dac A este o mul%ime de vIrfuri sta#il
eJterior( atunci
3 A A 4 2 U
0 Kn orice graf
4 : 2 2 3 5

mul%imea tuturor vIrfurilor 3 este sta#il eJterior0 La rIndul su( 5
ar !utea s con%in i alte su#mul%imi sta#ile eJterior 3 A ( ceea ce
conduce la no%iunea de mul%ime sta#il eJterior minimal i minim0
De)ini/ia #.#.#. Cubmulimea de vrfuri stabil/ exterior A a
unui graf 5 se numete minimal/4 dac/ -n 5 nu exist/ o alt/ mulime
stabil/ exterior B astfel -nct B A .
-.
Cu alte cuvinte( mul%imea sta#il eJterior este minimal( dac
orice su#mul%ime !ro!rie a acesteia nu este la rIndul su sta#il
eJterior0
De)ini/ia #.#.'. Cubmulimea de vrfuri stabil/ exterior A a
unui graf 5 se numete minim/4 dac/ pentru orice mulime stabil/
exterior B din 5 are loc relaia
B A
0
@#servm c 8n ca6ul mul%imii de vIrfuri sta#ile eJterior( s!re
deose#ire de mul%imea sta#il interior( este admis rela%ia de
adiacen% 8ntre vIrfuri0
S anali6m !entru graful din fig0. urmtoarele mul%imi5
{ }
{ }
{ }
{ }
{ }0 ( (
( (
( (
( ( ( ( (
( ( ( ( ( (
+ - ) -
1 = =
1 ) >
3 + - > . )
3 + - = > . .
x x x 0
x x 0
x x 0
x x x x x 0
x x x x x x 0

Kn #a6a defini%iilor )0)0.;)0)0>( mul%imile


= > ) .
( ( ( 0 0 0 0

sunt sta#ile eJterior0 "rintre ele
= > )
( ( 0 0 0
sunt mul%imi sta#ile
eJterior minimale( iar
= >
( 0 0
sunt c'iar i minime0 Mul%imea 0
-
nu
este sta#il eJterior( deoarece vIrful
- 3
P 0 x nu este adiacent cu
nici unul dintre vIrfurile mul%imii 0
-
0
7u! cum urmea6 din cele men%ionate( 8n orice graf neorientat
5 eJist atIt mul%imi sta#ile interior( cIt i mul%imi sta#ile eJterior0
Uor ne convingem 8ns c nu orice mul%ime sta#il interior este i
sta#il eJterior0 Totui( astfel de situa%ii 8ntIlnim 8n orice graf
neorientat0 7e eJem!lu( !entru graful din fig0. mul%imea
{ }
3 + - > . )
( ( ( ( x x x x x 0
!osed !ro!rietatea men%ionat0
-)
De)ini/ia #.#.3. Cubmulimea de vrfuri 3 A a unui graf 54
care este att stabil/ interior4 ct i stabil/ exterior se numete
nucleu al acestui graf.
"entru graful din fig0. mul%imea
{ }
3 + - > . )
( ( ( ( x x x x x 0
este
nucleu0 Cu uurin% se !oate o#serva( c o mul%ime de vIrfuri sta#il
interior este maJimal( dac i numai dac ea este sta#il eJterior0
"rin urmare( nucleu al grafului neorientat este orice mul%ime de
vIrfuri sta#il interior maJimal0 Kn calitate de nucleu al grafului din
fig0. !oate servi oricare dintre mul%imile 0
)
( 0
>
( 0
=
( descrise mai sus(
!recum i
{ }
1 > . +
( ( x x x 0
(
{ }
3 = 1
( x x 0
(
{ }
3 + - ) 3
( ( ( x x x x 0
0
Ca i 8n ca6ul mul%imilor de vIrfuri sta#ile interior( i mul%imile
de vIrfuri sta#ile eJterior 8i gsesc a!lica%ii la solu%ionarea
!ro#lemelor cu caracter a!licativ0
"rintre !ro#lemele( a cror solu%ionare se reduce la
determinarea unor mul%imi sta#ile eJterior( deseori se numr diferite
varia%ii ale !ro#lemelor de5
am!lasare a sta%iilor de retranslare a semnalelor de radio
sau TB !entru un teritoriu oarecare:
construire de #a6e militare menite s %in su# control
anumite regiuni:
am!lasare a centrelor comerciale menite s deserveasc
un anumit numr de localit%i0
S anali6m urmtoarea !ro#lem5
D localit%i
D
l l l (000( (
) .
sunt unite !rintr$o re%ea de drumuri0
Fie i)
d
; distan%a minim dintre localit%ile
i
l
i )
l
( determinat de
re%eaua dat de drumuri0 "entru deservirea !o!ula%iei se construiesc
cIteva centre medicale0 Se cunoate c !entru o deservire efectiv i
calitativ a !o!ula%iei distan%a de la o localitate !In la cel mai
a!ro!iat centru medical nu !oate fi mai mare decIt o mrime fiJat

0 Astfel( dac centrul medical cel mai a!ro!iat !entru localitatea


i
l
se va construi 8n localitatea )
l
( atunci numaidecIt este necesar
->
res!ectarea condi%iei

i)
d
0 Tre#uie de determinat numrul minim
de centre medicale !entru deservirea !o!ula%iei a celor D localit%i0
"entru solu%ionarea !ro#lemei( construim graful$model(
vIrfurile cruia cores!und localit%ilor i dou vIrfuri i i ) le
considerm adiacente dac

i)
d
0 Kn aceste condi%ii( mul%imea
minim de vIrfuri sta#il eJterior a acestui graf re!re6int localit%ile
8n care se vor construi centrele medicale0
7eseori( 8n legtur cu studierea mul%imilor de vIrfuri sta#ile
ale unui graf( se mai vor#ete i des!re aa$numitele mul%imi de
vIrfuri de aco!erire( definite !rin rela%ia de inciden% dintre
elementele grafului0
De)ini/ia #.#.5. Cubmulimea de vrfuri 3 A a unui graf 5
se numete acoperire de vrfuri4 dac/ orice muc%ie din 5 este
incident/ cel puin unui vrf din A.
Conform defini%iei date( mul%imea tuturor vIrfurilor 3 formea6
o aco!erire de vIrfuri 8n graf0 Totodat( avInd o mul%ime de vIrfuri
A( ce formea6 o aco!erire a grafului( s$ar !utea de cercetat !ro#lema
determinrii unei su#mul%imi din A ce !osed aceeai !ro!rietate cu
A0 Aceast situa%ie conduce la no%iunea de aco!erire minimal sau
minim a grafului0
De)ini/ia #.#.(. ; acoperire de vrfuri se numete minimal/4
dac/ orice submulime proprie a sa nu formea./ la rndul s/u
acoperire de vrfuri.
De)ini/ia #.#.7. Acoperirea de vrfuri cu un num/r minim de
elemente se numete acoperire minim/.
Cardinalul aco!eririi minime a unui graf neorientat
4 : 2 2 3 5
se notea6 !rin
4 2
*
5
0 "entru graful din fig0.( 8n
calitate de aco!eriri de vIrfuri !ot servi urmtoarele mul%imi5
-=
{ }
{ }
{ }0 ( (
( ( ( ( ( (
( ( ( (
1 = ) >
3 + - > ) . )
1 = ) . .
x x x B
x x x x x x B
x x x x B

"rintre aceste mul%imi B


)
i B
>
sunt minimale i numai B
>
este
minim0 7eci !entru acest graf avem
> 4 2
*
5
0
Anali6Ind defini%iile res!ective( !utem o#serva o mare
asemnare 8ntre aco!erirea de vIrfuri a unui graf i mul%imea sta#il
eJterior0 Astfel orice aco!erire de vIrfuri a unui graf este i mul%ime
sta#il eJterior0 Afirma%ia invers 8ns nu este adevrat0
@#servm( de asemenea( c dac A formea6 o aco!erire de
vIrfuri 8n graf( atunci mul%imea
A 3 P
nu con%ine vIrfuri adiacente(
adic este sta#il interior0 Kn ca6ul unei mul%imi sta#ile eJterior(
aceast !ro!rietate nu numaidecIt are loc0 Mai mult decIt atIt( dac
A formea6 o aco!erire de vIrfuri minimal 2sau minim4( atunci
A 3 P
este o mul%ime sta#il interior maJimal 2sau maJim40 &ste
adevrat i afirma%ia invers0 Astfel o#%inem urmtorul re6ultat5 o
su#mul%ime de vIrfuri A a unui graf
4 : 2 2 3 5
formea6 o
aco!erire 2minimal( minim4( dac i numai dac
A 3 P
este sta#il
interior 2maJimal( maJim40 7e aici( la rIndul su( re6ult c 8ntr$un
graf neorientat 5 cu n vIrfuri are loc egalitatea5
n 5 5 + 4 2 4 2
* *

0
#.#.$. M+0e*u* -ate-atic a* 1r+4*e-ei 0e 0eter-inare
a -u*/i-ii 0e <=r)uri .ta4i*e e5teri+r -ini-e
Fie matricea( ce se o#%ine din matricea de adiacen% a unui
graf
4 : 2 2 3 5
(
n
( !rin 8nlocuirea elementelor de !e
diagonala !rinci!al cu .0 Kn aceste condi%ii( cardinalul mul%imii de
vIrfuri sta#ile eJterior minime este egal cu numrul minim de
coloane din ce con%in 8n ansam#lu cel !u%in o unitate 8n fiecare
--
linie a matricei0 BIrfurile grafului ce cores!und coloanelor res!ective
formea6 mul%imea de vIrfuri sta#il eJterior minim0
"entru fiecare vIrf
3 x
)

( formm mul%imile
4 2 L M
) ) )
x x C
0 Bom nota !rin IX mul%imea de vIrfuri sta#il
eJterior minim din 50
"ro#lema determinrii mul%imii IX !oate fi formulat ca o
!ro#lem de !rogramare liniar( 8n modul urmtor5
S se minimi6e6e func%ia

n
)
)
E
.

2)0.*4
cu restric%iile

n
)
) i)
t
.
.
( !entru
n i ( .
( 2)0..4

'

0 X dac ( *
( X dac ( .
I x
I x
)
)
)

2)0.)4

'

0 dac ( *
( dac ( .
) i
) i
i)
C x
C x
t
2)0.>4
E5e-1*u. S anali6m graful din fig01 0
-+
x
.
x
-
x
=
x
)
x
>
x
1
x
+
"ig.7
Formm urmtoarele mul%imi de vrfuri5
0 L ( ( ( M 4 2 L M
( L ( ( ( M 4 2 L M
( L ( ( ( M 4 2 L M
( L ( ( ( M 4 2 L M
( L ( ( M 4 2 L M
( L ( ( M 4 2 L M
( L ( ( M 4 2 L M
+ + = ) 1 1 1
1 + - > + + +
+ - = ) - - -
1 - = . = = =
+ > . > > >
1 - ) ) ) )
= > . . . .
x x x x x x C
x x x x x x C
x x x x x x C
x x x x x x C
x x x x x C
x x x x x C
x x x x x C






Matricea o#%inut din matricea de adiacen% !rin 8nlocuirea


elementelor de !e diagonala !rinci!al cu unit%i este
0 . * . * . *
. . * . * *
* . . * . *
. * . * * .
* . * * * .
. * . * * *
* * * . . *

,
_

$
$
$
$
$
$
$

Una dintre !osi#ilele mul%imi sta#ile eJterior minime este


L ( ( M
> ) .
X
x x x I
0 Kn acest ca6( varia#ilele
1 ( . ( )
)

( ale !ro#lemei
2)0.*4 ; 2)0.>4 ar fi
.
> ) .

(
*
1 + - =

0
&lementele i)
t
alte matricei satisfac condi%iile 2)0.>40
-1
"rintr$o verificare sim!l ne convingem c se res!ect
condi%iile 2)0..40 Baloarea func%iei o#iectiv este
>
1
.

)
)
E
0 "rin
urmare( mul%imii
X
I
8i cors!unde o solu%ie admisi#il a !ro#lemei
2)0.*4;2)0..4( i !rintr$o anali6 a grafului din fig01 ne !utem uor
convinge c aceai situa%ie va avea loc i !entru oricare alt mul%ime
sta#il eJterior0
#.#.#. A*g+rit-u* 0e c+n.truire a -u*/i-ii 0e
<=r)uri .ta4i*e e5teri+r -ini-e
"ro#lema determinrii mul%imii de vIrfuri sta#il eJterior
minim este de fa!t ec'ivalent cu o !ro#lem de divi6are minim(
care !oate fi formulat 8n modul urmtor0
Fie
L (000( ( M
) . M
r r r G
o mul%ime de elemente ar#itrare i
L (000( ( M
) . D
C C C S
( o familie de su#mul%imi din G0 S se determine
su#familia
S S L (000( ( M \
) . k
) ) )
C C C
cu un numr minim de elemente
astfel 8ncIt
G C
k
i
)
i

.
i

s =
) )
C C
(
s = k s = L( (000( ) ( . M (
0
&c'ivalen%a acestor dou !ro#leme se constat imediat ce
considerm 3 G i
4 2 L M
i i i
x x C
(
3 i ( .
0 Kn aceast
inter!retare( mul%imea de vIrfuri sta#il eJterior minim este format
din acele vIrfuri
3 x
i

( !entru care
' S
i
C
0
&J!unem 8n continuare un algoritm care se utili6ea6 la
solu%ionarea !ro#lemei de aco!erire minim a unei mul%imi de
elemente
L (000( ( M
) . M
r r r G
0
-3
Ini%ial construim un ta#el s!ecial liniile cruia cores!und
elementelor mul%imii G( coloanele cores!und mul%imilor
S
)
C
( iar
elementul din linia cu numrul p i coloana cu numrul ) este egal cu
.( dac
4 ( . 2 n ) C r
) p

( i este egal cu * ; 8n ca6 contrar0 Fiecrui
element p
r
i se !une 8n cores!onden% #locul de coloane ce
cores!und acelor su#mul%imi din S( care con%in acest element i nu
con%in elemente
p k r
k
< (
0 Coloanele ce cores!und su#mul%imilor
din S i care formea6 #locul p le vom aranNa 8n acest #loc 8ntr$o
ordine ar#itrar i le vom nota !rin
p
k
p p
p
C C C (000( (
) .
(
n p ( .
2aici
p
k
este numrul mul%imilor familiei S care con%in elementul p
r
40
Structura ta#elului !e #locuri este !re6entat sc'ematic 8n ta#elul )0
Remarcm c dac toate mul%imile
S
)
C
( ce con%in elementul p
r
(
con%in elemente
k
r
cu indicele
p k <
( atunci #locul cu numrul p va
li!si din ta#el0
Ta4e*u* #
<locul nr0 . <locul nr0 ) <locul nr0 > <locul nr0 n
. .
)
.
.
.
(000( (
k
C C C
) )
)
)
.
)
(000( (
k
C C C
> >
)
>
.
>
(000( (
k
C C C
0 0 0
n
k
n n
n
C C C (000( (
) .
.
r
. . 000 .
:
:
0
0
0
0
0
0
0
:
)
r
*
sau
.
. . 000 .
>
r
*
sau
.
. . 000 .
0
0
0
*
sau
.
M
r
. . 000 .
La descrierea algoritmului vom folosi urmtoarele nota%ii5
B
X
; solu%ia o!tim curent:
Z
X
; cardinalul mul%imii B
X
2numrul de su#mul%imi )
C
( care
formea6 o divi6are a mul%imii G4:
-/
B ; familia mul%imilor din S( care !oate conduce la o#%inerea
solu%iei o!time:
Z ; cardinalul familiei B:
0 ; su#mul%imea de elemente din G( care a!ar%in mul%imilor din
B

,
_

i
B C
C 0
i
0
Algoritmul !ro!us este un algoritm iterativ( i 8n !rocesul
determinrii solu%iei o!time a!lic ar#orele de cutare0 Toat
informa%ia necesar !entru solu%ionarea !ro#lemei se re!re6int su#
forma unui ta#el descris mai sus0 Kn !rocesul eJecutrii algoritmului(
fiecare coloan a ta#elului( folosit !entru eJtinderea familiei B( este
marcat 8ntr$un mod oarecare !entru a %ine cont de aceast situa%ie la
eta!ele urmtoare0
De.crierea a*g+rit-u*uiC
8a.u* $. Construim ta#elul descris anterior0 Considerm
B R T( 0 O P( Z R *( Z
X
R *0
8a.u* #. Calculm
L 5 minM 0 r i p
i

0
7ac toate coloanele #locului ]p^ au fost folosite la careva
eta!e anterioare !entru eJtinderea mul%imii B( sau #locul ]p^ este
vid( atunci trecem la !asul -0
Kn ca6 contrar( alegem !rima coloan( neutili6at 8nc !entru
eJtinderea lui B0 Fie
p
)
C
coloana aleas din #locul cu numrul p0
8a.u* '. 7ac
X
. Z Z < + ( atunci trecem la !asul =0 Kn ca6
contrar trecem la !asul +0
8a.u* 3. Formm mul%imea
+*
0 C
p
) 1
P
0
&Jtindem mul%imile5
p
)
p
)
C 0 0
C B B

( L M
i considerm
0 . + Z Z
7ac
G 0
(
atunci considerm
B B
X
(
Z Z
X
i trecem la
!asul +0 Kn ca6 contrar( trecem la !asul )0
8a.u* 5. 7ac
. p
( atunci fiJm
X
B
dre!t solu%ie o!tim a
!ro#lemei0 STO8.
7ac
. > p
( atunci revenim la com!onen%a !recedent a
mul%imilor B i 0( !rin eJcluderea ultimei mul%imi adugate
p i C
i
)
< (
0 P
( L M P
i
i
)
0 0
C B B

Considerm

i

i modificm valoarea lui . Z Z 0


Toate coloanele #locului p le declarm li#ere 28n viitor orice coloan
a acestui #loc !oate fi folosit !entru eJtinderea mul%imii B40 Trecem
la !asul )0
8a.u* (. Modificm mul%imile B i 00 7ac ultimul element
adugat 8n B a fost
p
)
C
( atunci
( L M P
p
)
C B B
p
0 0 P
0
+.
Considerm

p

i modificm valoarea lui . Z Z 0


Trecem la eJecutarea !asului )0
7ac G 0 ( atunci considerm
B B
X
( Z Z
X
i trecem la
!asul =0 Kn ca6 contrar( trecem la !asul )0
E5e-1*u. S anali6m graful din fig03( !entru care vom
considera
L ( ( ( ( M
- = > ) .
x x x x x 3 G
(
( L ( M
( L ( M
( L ( ( M
( L ( ( M
( L ( ( M
- . -
= ) =
> ) . >
= > ) )
- > . .
x x C
x x C
x x x C
x x x C
x x x C

L ( ( ( ( M
- = > ) .
C C C C C S
0

"ig. 9
@#servm cu uurin% c una dintre aco!eririle minime este
determinat de mul%imile
.
C
i
)
C
2adic L ( M
) .
X
C C B 40 7e aici
deducem c dre!t mul%ime de vIrfuri sta#il eJterior minim !oate
servi mul%imea
L ( M
) .
x x A
0
2Men%ionm c 8n calitate de mul%ime de vIrfuri sta#il eJterior
minim !entru graful din fig0 3 ar !utea servi i alte mul%imi( de
eJem!lu
L ( M
= .
x x
sau
L ( M
- )
x x
04
+)
x
.
x
-
x
)
x
=
x
>
Bom anali6a 8n continuare reali6area !as cu !as a algoritmului
descris0 Kn conformitate cu !asul . construim ta#elul >0
Ta4e*u* '
<locul nr0 . <locul nr0 )
4 2
.
.
.
C C
4 2
>
.
)
C C 4 2
-
.
>
C C
4 2
)
)
.
C C 4 2
=
)
)
C C
.
x
$ $ $ : :
)
x
* . * $ $
>
x
. . * . *
=
x
* * * . .
-
x
. * . * *
Nota%ia
4 2
k
)
i
C C
din ta#el 8nseamn c coloana cu numrul ]i^
a #locului cu numrul ])^ cores!unde mul%imii
k
C
a familiei S0
Ini%ial considerm B R T( 0 O T( Z R *( Z
X
R _`0
8a.u* #. 7eoarece
0 r
.
( considerm
. p
i marcm
coloana
.
.
C 0
8a.u* '. Z _ . R * _ .aZ
X
R _`0 Trecem la !asul =0
8a.u* 3.
L ( ( M
- > . .
x x x
(
LL ( ( M M L M T L M
- > .
.
.
.
.
.
.
x x x C C C B B
(
L ( ( M
- > .
x x x 0
(
Z R .0
7eoarece G 0 ( trecem la !asul ) al algoritmului0
8a.u* #. p R )0 Marcm coloana
)
.
C 0
8a.u* '. Z _ . R ) a Z
X
0 Trecem la !asul = al algoritmului0
+>
8a.u* 3. @#%inem mul%imile noi 5
L ( M
= ) )
x x
(
LL ( ( M L( ( ( M M L M
= > )
)
. - > .
.
.
)
.
x x x C x x x C C B B
(
L ( ( ( ( M
- = > ) .
x x x x x 0
(
Z R ) 0
7eoarece 0 OG4 vom avea5
LL ( ( M L( ( ( M M
= > )
)
. - > .
.
.
X
x x x C x x x C B
i Z
X
R )0
@#servm c
X
B
determin o divi6are a mul%imii de vIrfuri D
8n dou su#mul%imi0 @#%inem o mul%ime de vIrfuri sta#il eJterior ;
L ( M
) .
x x
0 Kn continuare algoritmul se folosete !entru a determina
dac s$a o#%inut o aco!erire minim sau nu0
8a.u* (. &liminm din B ultimul element adugat
)
.
C 0
@#%inem5
LL ( ( M M
- > .
.
.
x x x C B
(
L ( ( M
- > .
x x x 0
(

)

(
Z R Z ; .R .0
8a.u* #. Alegem coloana
)
)
C 0
8a.u* '. Z _ . R . _ . R Z
X
0
8a.u* (. &liminm
)
)
C din B0 @#%inem5
B R T( 0 R T(
T
.

(
Z R *0
8a.u* #. 7eoarece
. L 5 minM 0 x i p
i
( alegem coloana
.
)
C 0
8a.u* '.
4 ) 2 . * .
X X
< + + Z Z Z
0
8a.u* 3. Formm mul%imi noi5
+=
4 ( ( M
> ) . .
x x x
(
L ( ( M L M L M
> ) .
.
)
.
)
x x x C C B B
(
4 ( ( M
> ) .
.
)
x x x C 0 0
(
Z R .0
&ste clar c 3 0 0
8a.u* #. Calculm
= L 5 minM 0 x i p
i
0 <loc cu numrul
!atru 8n ta#elul nostru nu eJist0
8a.u* 3. Modificm mul%imile B i 0 5
B R T( 0 R T0
7eclarm
T
.

i considerm Z R *0
8a.u* #. 7eoarece
. L 5 minM 0 x i p
i
( alegem coloana
.
>
C
0
8a.u* '.
4 ) 2 . * .
X X
< + + Z Z Z
0
8a.u* 3. Formm mul%imi noi5
4 ( M
- . .
x x
(
L ( M L M
- .
.
>
x x C B B
(
+-
4 ( M
- .
.
>
x x C 0 0
(
Z R .0
8a.u* #. Calculm
) L 5 minM 0 x i p
i
0 Alegem !rima
coloan nefolosit din #locul ) ; coloana
)
.
C 0
8a.u* '.
X
) . Z Z + 0 Trecem la !asul +0
8a.u* (. Modificm mul%imile B i 00 &liminm coloana
.
>
C
0
B R T( 0 R T(
T
.

(
Z R *0
8a.u* #. Calculm
. L 5 minM 0 x i p
i
0
8a.u* 5. Mul%imea
X
B
re!re6int solu%ia o!tim 5
L ( M
)
.
.
.
X
C C B 0
7eci mul%imea
L ( M
) .
x x
este mul%imea sta#il eJterior minim
a grafului din fig030
#.'. Cu1*aDuri
La #a6a no%iunilor de mul%ime sta#il interior i mul%ime sta#il
eJterior st rela%ia de adiacen% 8ntre vIrfurile grafului0 "rin analogie
cu cele eJ!use anterior( deoarece rela%ia de adiacen% este definit i
!entru muc'iile grafului( !utem vor#i des!re mul%imile de muc'ii
sta#ile interior0 Astfel de mul%imi 8n literatura de s!ecialitate sunt
cunoscute ca cu!laNuri0 Cu!laNurile !re6int interes din !unct de
vedere atIt teoretic( cIt i !ractic datorit unui s!ectru larg de
!ro#leme a!licative solu%ionarea crora se reduce la determinarea
unor cu!laNuri s!eciale0
++
De)ini/ia #.'.$. Cubmulimea de muc%ii 2 0 a grafului 5 se
numete cupla)4 dac/ oricare dou/ muc%ii din 0 nu sunt adiacente.
Uor se o#serv c 8n conformitate cu aceast defini%ie 8n orice
graf neorientat eJist cu!laNuri0 "rintre cele mai sim!le cu!laNuri(
nevide( se afl mul%imile ce con%in o singur muc'ie din graf0
?rafurile 8n care orice cu!laN con%ine o singur muc'ie sunt grafurile
4 : 2 2 3 5
cu
. 2
i grafurile p
$
( . ( numite grafuri stea.
7ac 0 este un cu!laN al grafului neorientat
4 : 2 2 3 5
(
atunci !utem 8ncerca s eJtindem mul%imea dat din contul celorlalte
muc'ii0 Aceast situa%ie conduce la construirea cu!laNului maJimal i
a cu!laNului maJim0
De)ini/ia #.'.#. ,upla)ul 0 se numete maximal4 dac/ -n graf
nu exist/ un alt cupla) astfel -nct 0 .
De)ini/ia #.'.'. ,upla)ul 0 se numete maxim4 dac/ pentru
oricare cupla) din graf are loc relaia
0
.
Numrul de muc'ii ale grafului 5 ce a!ar%in cu!laNului maJim
se notea6 !rin
4 2
.
5
0 "rin urmare( dac 0X este cu!laNul maJim al
grafului 5( atunci
X 4 2
.
0 5
0
Uor se !oate de o#servat c cu!laNurile unui graf neorientat
4 : 2 2 3 5
!ot fi studiate !rin intermediul mul%imilor sta#ile
interior ale grafului muc'iilor
4 25 (
0 Kntr$adevr( oricrui cu!laN din
5 8i cores!unde o mul%ime de vIrfuri sta#il interior 8n (2540 Kn
realitate are loc egalitatea
44 2 2 4 2
* .
5 ( 5
0 Cu toate acestea(
eJist algoritmi efectivi de construire a cu!laNului maJim 8ntr$un graf
neorientat 5( care 8i gsesc a!lica%ie la solu%ionarea unor !ro#leme
cu as!ect a!licativ0
"entru graful 5 !re6entat 8n fig0/( eviden%iem cu!laNurile5
+1
{ }
{ }
{ }
{ }
{ }0 ( (
( ( (
( (
( (
(
> ) . +
1 - = =
+ . >
1 = )
= .
u u u 0
u u u 0
u u 0
u u 0
u 0

"rintre aceste mul%imi numai 0


>
( 0
=
( 0
-
sunt maJimale( iar 0
=
(
0
-
sunt i maJime0 7eci
> 4 2
.
5
0
Ca i 8n ca6ul mul%imilor de vIrfuri sta#ile interior( studierea
cu!laNurilor !oate fi fcut 8n coordonare cu aco!eririle de muc'ii0
"ig.%
De)ini/ia #.'.3. Cubmulimea de muc%ii 2 0 \ a unui graf
4 : 2 2 3 5
se numete acoperire de muc%ii4 dac/ orice vrf din 5
este incident cel puin unei muc%ii din 0Q0
Kn conformitate cu aceast defini%ie( orice graf con%ine aco!eriri
de muc'ii0 Kn calitate de aco!erire de muc'ii trivial !oate servi
mul%imea tuturor muc'iilor grafului0 Totodat( avInd o aco!erire
ar#itrar de muc'ii 04 !utem 8ncerca s$i !strm aceast !ro!rietate
!rin eliminarea din 0 a unor muc'ii0 Astfel aNungem la no%iunea de
aco!erire minimal0
De)ini/ia #.'.5. Acoperirea de muc%ii 0Q se numete minimal/4
dac/ -n graf nu exist/ o alt/ acoperire de muc%ii \ astfel -nct
\ \ 0 Badic/ orice submulime proprie din 0Q nu formea./
acoperire de muc%ii?.
+3
u
.
u
>
u
-
u
=
u
1
u
+
u
)
De)ini/ia #.'.(. Acoperirea de muc%ii 0Q se numete minim/4
dac/ pentru oricare acoperire de muc%ii \ a grafului are loc
relaiaR
\ \ 0
0
Numrul de muc'ii ale grafului 5 din aco!erirea minim se
notea6 !rin
4 2
.
5
0
"entru graful
4 : 2 2 3 5
din fig0/( men%ionm cIteva
aco!eriri de muc'ii5
{ }
{ }
{ }
{ }0 ( (
( ( ( (
( ( ( (
( ( ( ( ( ( (
> ) .
\
=
+ - ) .
\
>
1 = > .
\
)
1 + - = > ) .
\
.
u u u 0
u u u u 0
u u u u 0
2 u u u u u u u 0


"rintre acestea
\
>
0
i
\
=
0 sunt aco!eriri minimale( iar
\
=
0
este aco!erire minim0 7eci !entru graful 5 din fig0 / avem
> 4 2
.
5
0 Kntre cu!laNurile unui graf i aco!eririle de muc'ii eJist
o legtur strIns( care 8i gsete eJ!rimare 8n egalitatea
n 5 5 + 4 2 4 2
. .

( unde
3 n
0
7in cele studiate !In acum( !utem o#serva c eJist cu!laNuri
care !ot servi 8n acelai tim! i ca aco!eriri de muc'ii0 7u! cum
vom vedea( asemenea situa%ie nu are loc !entru orice graf neorientat0
De)ini/ia #.'.7. ;rice cupla)4 care formea./ o acoperire de
muc%ii -n graf4 se numete cupla) perfect.
"entru graful din fig0/( mul%imea de muc'ii
{ }
> ) . -
( ( u u u 0

este un cu!laN !erfect0 Conform defini%iilor )0>0.;)0>01( 8ntr$un graf
ar !utea eJista cu!laN !erfect numai dac numrul de vIrfuri este !ar0
Kn grafurile cu numr im!ar de vIrfuri astfel de cu!laNuri nu eJist0
+/
#.'.$. Lan/uri 0e -aD+rare a cu1*aDuri*+r
Bom considera 8n continuare c este fiJat un cu!laN oarecare M
8ntr$un graf neorientat
4 : 2 2 3 5
0 @rice muc'ie
M u P U
se va
numi muc%ie liber/ a grafului 5 8n ra!ort cu cu!laNul M0 7ac
vIrfurile x( 7 sunt eJtremit%i ale unei muc'ii M u ( atunci x se va
numi partener al lui 7 i invers0 BIrfurile( care nu sunt incidente
muc'iilor cu!laNului M se vor numi vrfuri libere0
De)ini/ia #.'.9. 2n lan simplu
Z (000( ( Y
) . k
x x x p
se numete
alternant -n raport cu cupla)ul M4 dac/ muc%iile determinate de
perec%ile de vrfuri
4 ( 2
) .
x x
4
4 ( 2
= >
x x
4 ...4
4 ( 2
) . ) ) )
x x
4...sunt
libere4 iar cele determinate de perec%ile de vrfuri
4 ( 2
> )
x x
4
4 ( 2
- =
x x
4 ...4
4 ( 2
. ) ) + ) )
x x
4... sunt muc%ii ale cupla)ului M.
BIrfurile de !e locurile im!are ale unui lan% alternant se vor
numi vrfuri exterioare( iar cele de !e locurile !are ; vrfuri
interioare0
De)ini/ia #.'.%. :rful
x
se numete vrf exterior
Binterior?4 determinat de cupla)ul M4 dac/ -n graf exist/ un lan
alternant p4 -n raport cu care x este vrf exterior Binterior?.
Kn graful din fig0.* este fiJat un cu!laN
4Z ( 2 4( ( 2 4( ( 2 4( ( Y2
.* 1 3 + - = > )
x x x x x x x x M
0
Kn acest graf( lan%urile
Z ( ( ( ( ( Y
3 = - > ) . .
x x x x x x P
i
Z ( ( ( ( ( ( ( Y
/ .* 1 3 + - = . )
x x x x x x x x P
1*
sunt alternante0 BIrfurile
= > .
( ( x x x
sunt eJterioare( iar
3 - )
( ( x x x
;
interioare 8n ca6ul lan%ului
.
P
0 2Kn ca6ul lan%ului
)
P
( vIrfuri
eJterioare vor fi
.* 3 - .
( ( ( x x x x
( iar interioare ;
/ 1 + =
( ( ( x x x x
04
Uor ne convingem de fa!tul c 8n ra!ort cu cu!laNul
4L ( 2 4( ( 2 4( ( 2 4( ( M2
.* 1 3 + - = > )
x x x x x x x x M
graful din fig0.* con%ine
numai dou vIrfuri li#ere0
"ig.$:
De)ini/ia #.'.$:. 2n lan alternant
Z (000( ( Y
) . k
x x x p
se
numete lan de ma)orare -n raport cu un cupla) M4 dac/ ambele
extremit/i
.
x
i
k
x
ale lui p sunt vrfuri libere0
"entru graful din fig0.*( lan%ul
Z ( ( ( ( ( ( ( Y
/ .* 1 3 + - = .
x x x x x x x x p
este un lan% de maNorare0
@#servm c( dac muc'iile cu!laNului din p le declarm li#ere( iar
cele li#ere le declarm muc'ii ale cu!laNului( atunci( 8n re6ultatul
acestei o!era%ii( o#%inem un cu!laN nou
4Z ( 2 4( ( 2 4( ( 2 4( ( 2 4( ( Y2
> ) / .* 1 3 + - = .
\
x x x x x x x x x x M
( de cardinal
mai mare decIt M0
Lan%urile de maNorare ar !utea Nuca un rol decisiv 8n
solu%ionarea !ro#lemei cu!laNului maJim 8ntr$un graf neorientat0 S
1.
x
.
x
=
x
1
x
)
x
>
x
-
x
+
x
.*
x
/
x
3
notm !rin P mul%imea muc'iilor unui lan% de maNorare p( 8n ra!ort
cu cu!laNul M0 &ste adevrat afirma%ia5
9ac/ p este un lan de ma)orare -n raport cu un cupla) M al
grafului neorientat
4 : 2 2 3 5
4 atunci
4 P 2 4 P 2 \ M M M P P
este un cupla)
nou -n 5 i
. \ + M M
.
Totodat( men%ionm c dac M este un cu!laN maJim 8n graful
5( atunci 5 nu con%ine lan%uri de maNorare 8n ra!ort cu M0 Cu alte
cuvinte( este adevrat afirma%ia5
2n cupla) M al grafului
4 : 2 2 3 5
este maxim4 dac/ i
numai dac/ -n 5 nu exist/ lanuri de ma)orare -n raport cu M.
Ideea eJ!us cu !rivire la folosirea lan%ului de maNorare !entru
construirea cu!laNului maJim st la #a6a ela#orrii algoritmului
res!ectiv0 Bom anali6a mai 8ntIi ca6ul grafului #i!artit( dat fiind
fa!tul c datorit structurii sale 8ntr$un graf #i!artit construirea unui
astfel de cu!laN este mai sim!l0
#.'.#. Cu1*aDuri En gra)uri 4i1artite
S studiem o metod iterativ de construire a unui cu!laN
maJim( !ornind de la un cu!laN oarecare i construind la fiecare eta!
un lan% de maNorare0 "ro#lema !rinci!al ar fi( desigur( de!istarea
acestui lan%0
Fie
4 : ( 2
) .
2 3 3 5
un graf #i!artit i M un cu!laN oarecare
8n 5 2ini%ial s$ar !utea considera c M con%ine o singur muc'ie a
grafului40 &vident( cutarea unui lan% de maNorare tre#uie s 8ncea!
din vIrfurile li#ere ale grafului0 LuInd 8n considera%ie defini%ia
)0>0.*( orice lan% de maNorare va con%ine o eJtremitate 8n
.
3
( iar
1)
cealalt ; 8n
)
3
0 7in aceste considerente( fr a !ierde din
generalitate( vom cuta astfel de lan%uri 8nce!Ind cu vIrfurile li#ere
ale mul%imii
.
3
0 Kn acest sco!( !ornind dintr$un vIrf li#er
.
3 x
!utem construi toate lan%urile alternante folosind !rinci!iul de
cutare 8n l%ime0
"entru a elucida cele eJ!use mai sus( vom anali6a graful din
fig0..( 8n care este fiJat cu!laNul0
4L ( 2 4( ( 2 4( ( 2 4( ( 2 4( ( 2 4( ( M2
)
-
.
+
)
+
.
-
)
>
.
=
)
)
.
>
)
+
.
)
)
=
.
.
x x x x x x x x x x x x M
0
Alegem vIrful
L ( ( ( ( ( M
.
+
.
-
.
=
.
>
.
)
.
.
. .
)
x x x x x x 3 x
0 Folosind
metoda de cutare 8n l%ime la construirea lan%urilor alternante( vom
aNunge la !asul urmtor 8n vIrfurile
)
)
x i
)
+
x
0
"ig.$$
7ac cel !u%in unul dintre aceste vIrfuri ar fi li#er( atunci !utem
considera c lan%ul de maNorare este construit0 Kn conformitate cu
defini%ia lan%ului alternant 2ve6i defini%ia )0>034( 8n continuare ne
micm numai !e muc'iile cu!laNului0 Astfel aNungem 8n vIrfurile
1>
.
)
x
.
.
x
)
>
x
)
.
x
.
>
x
.
=
x
)
)
x
.
-
x
.
+
x
)
+
x
)
-
x
)
=
x
. .
-
.
>
( 3 x x
0 Aceste vIrfuri se determin 8n mod univoc ca vIrfuri$
!artenere !entru
)
)
x i
)
+
x
0 7in vIrfurile
.
>
x
i
.
-
x
( 8n conformitate
cu metoda de !arcurgere 8n l%ime aNungem la
)
-
)
=
)
>
( ( x x x
0
Kntreaga !rocedur de construire a lan%urilor alternante este
!re6entat 8n fig0.)0
"ig.$#
S considerm !rimul vIrf din care a !ornit !rocesul de cutare
8n l%ime ; vIrful
.
)
x dre!t vIrf de nivelul ]*^( a!oi vIrfurile
urmtoare
)
)
x (
)
+
x
; vIrfuri de nivelul ].^ 0a0m0d0 BIrful
)
.
x va fi
vIrf de nivelul ]-^0 "utem o#serva c folosirea metodei de cutare 8n
l%ime 8n acest ca6 este destul de s!ecific( dat fiind fa!tul c trecerea
de la nivelul cu numr im!ar la cel cu numr !ar se determin 8n mod
univoc datorit defini%iei cu!laNului 2fiecare vIrf de la nivelul im!ar
1=
)
)
x
.
)
x
)
+
x
.
>
x
)
>
x
.
=
x
.
-
x
)
=
x
.
.
x
)
.
x
)
-
x
.
+
x
este incident unei singure muc'ii a cu!laNului i !rin urmare vIrful$
!artener al su se determin 8n mod univoc40
"ig. $'
Aceast situa%ie ar sugera ideea c trecerile de la nivelurile
im!are la cele !are ar !utea fi omise 8ntr$un mod oarecare0 Bom
sim!lifica !rocesul de cutare !rin omiterea nivelurilor im!are
efectuInd nemiNlocit trecerea din vIrfuri eJterioare 8n vIrfuri noi( de
asemenea eJterioare0 @ astfel de cutare ar !utea fi inter!retat
!rintr$un graf orientat 2graful res!ectiv este !re6entat 8n fig0 .>40
"ig. $3
7in eJem!lul anali6at( devine clar c !ro#lema construirii unui
lan% de maNorare !oate fi redus la !ro#lema construirii unui drum
1-
.
+
x
.
-
x
.
>
x
.
=
x
.
.
x
.
)
x
.
>
x
.
=
x
.
-
x
.
+
x
.
.
x
8ntr$un graf orientat( mul%imea de vIrfuri a cruia coincide cu
.
3
i
8n care dou vIrfuri x( 7 sunt unite !rintr$un arc 2x( 74( dac i numai
dac 7 !oate fi vIrf eJterior 8n careva drum de maNorare du! vIrful
x0 Un astfel de graf orientat( ce cores!unde grafului din fig0.. este
!re6entat 8n fig0 .=0
#.'.#.$. A*g+rit-u* c+n.truirii cu1*aDu*ui -a5i-
EntrFun gra) 4i1artit
"entru descrierea algoritmului( vom folosi nota%iile5
M ; cu!laNul curent din graful #i!artit
4 : ( 2
) .
2 3 3 5
:
4 ( 2 4 2
X . X
2 3 M 5
; graful orientat( construit du! regulile
descrise anterior 8n #a6a grafului #i!artit 5 i 8n cores!undere cu
cu!laNul curent M:
( ; o matrice de dimensiunile
) .
3 3
( liniile creia
cores!und vIrfurilor din
.
3
( coloanele ; vIrfurilor din
)
3
i cu
elementele

'

contrar: ca6 8n ( *
( cu adiacent i li#er vIrf este dac ( .
. )
i )
i)
x x
l
A ; matricea de adiacen% a grafului #i!artit
4 : ( 2
) .
2 3 3 5

cu
) .
dim A
i elementele

'

0 contrar ca6 8n ( *
( dac ( .
) .
) i
i)
x x
a
1+
Kn graful orientat
4 2
X
M 5
( construirea lan%ului de maNorare se
va face conform metodei de cutare 8n l%ime( !ornind de la un vIrf
.
i
x
( care 8n graful #i!artit
4 : ( 2
) .
2 3 3 5
este vIrf li#er0 7ac 8n
!rocesul de cutare aNungem la un vIrf
.
k
x
!entru care linia cu
numrul k a matricei ( con%ine cel !u%in o unitate( atunci aceasta
8nseamn c eJist lan% de maNorare 8n 50 Kn ca6 contrar( !rocesul de
construire continu0
7ac 8n final nu reuim s construim !entru
4 2
X
M 5
un drum(
cruia i$ar cores!unde 8n 5 un lan% de maNorare( atunci cu!laNul
curent M va fi cu!laN maJim0 Aceasta s$ar 8ntIm!la 8n ca6ul cInd
!rintre elementele mul%imii
.
3
nu eJist vIrfuri li#ere( sau 8n ca6ul
cInd 8n
.
3
astfel de vIrfuri eJist( 8ns toate elementele matricei (
sunt egale cu 6ero0
#.'.#.#. De.crierea a*g+rit-u*ui
8a.u* $. Ini%ial considerm M R i ( R A0
8a.u* #. 7ac 8n
.
3
nu eJist vIrfuri li#ere ale grafului
#i!artit 8n ra!ort cu cu!laNul curent M sau dac ( R *( atunci trecem
la !asul .*0 Kn ca6 contrar( reali6m !asul >0
8a.u* '. Construim graful orientat
4 2
X
M 5
8n modul urmtor5
a4 Alegem mul%imea de vIrfuri
.
3
:
#4 @rice dou vIrfuri
.
k
x
i
.
m
x
le unim !rintr$un arc( orientat
de la
.
k
x
s!re
.
m
x
( dac i numai dac 8n graful #i!artit
eJist un vIrf
) )
3 x
=

astfel 8ncIt
. . )
(
m k =
x x x
( muc'ia
4 ( 2
) .
= k
x x
este li#er( iar
4 ( 2
) .
= m
x x
este muc'ie din M0
7ac M ( atunci
4 2
X
M 5
va fi un graf vid0
8a.u* 3. Kn graful construit
4 2
X
M 5
( alegem un vIrf
.
*
x
( care
este un vIrf li#er din 50
11
8a.u* 5. Knce!Ind cu vIrful
.
*
x
( construim ar#orele de cutare
8n l%ime0
27ac M ( atunci vom o#%ine numai vIrful
.
*
x
04
8a.u* (. 7ac !rintre vIrfurile sus!endate ale ar#orelui de
cutare nu se gsete nici unul( linia cruia 8n matricea ( s con%in
cel !u%in o unitate( atunci trecem la !asul .*0 Kn ca6 contrar( dac
eJist un astfel de vIrf
.
.
x ( reali6m !asul 10
8a.u* 7. Ramura ar#orelui de cutare( care unete vIrfurile
.
*
x

cu
.
.
x cores!unde unui drum de maNorare P 8n graful #i!artit 50
8a.u* 9. Modificm cu!laNul 2o#%inem un cu!laN nou( de
cardinal mai mare45
4 P 2 4 P 2 M M M P P
0
8a.u* %. Kn conformitate cu cu!laNul nou( construim matricea (0
Reali6m 8n continuare !asul )0
8a.u* $:. Cu!laNul M este maJim0 STO80
Algoritmul descris re6olv efectiv !ro#lema cu!laNului maJim
8ntr$un graf #i!artit( avInd o com!leJitate !olinomial 8n ra!ort cu
numrul de vIrfuri0 Com!leJitatea algoritmului este de
4 4 ( 2 2min
) .
m n n ;
( unde
2 m 3 n 3 n ( (
) ) . . 0
#.'.'. Cu1*aDuri En gra)uri ne+rientate. Ca7 genera*
13
Ideea eJtinderii unui cu!laN 8ntr$un graf #i!artit din contul unui
lan% de maNorare este vala#il i 8n ca6ul unui graf ar#itrar( numai c
8n acest ca6 a!ar unele com!lica%ii care !ot fi de!ite 8ntr$un mod
s!ecial0 Kn ca6ul grafurilor #i!artite( se construiete graful orientat
4 2
X
M 5
( 8n #a6a cu!laNului curent M cu mul%imea de vIrfuri
.
3
a
grafului #i!artit
4 : ( 2
) .
2 3 3 5
0 Aceast situa%ie se datorea6
fa!tului c vIrfurile eJterioare ale oricrui lan% alternant ce !ornete
dintr$un vIrf li#er al mul%imii
.
3
din 5 vor a!ar%ine numaidecIt
aceleiai mul%imi
.
3
0 7ac 8ns vom anali6a un graf ar#itrar( atunci
aici situa%ia este de alt natur5 8n calitate de vIrf eJterior ar !utea
figura orice vIrf al su0
S anali6m graful din fig0.-0
"ig. $5
7ac ra!ortat la cu!laNul
4L ( 2 4( ( 2 4( ( 2 4( ( M2
/ 3 1 + - = > )
x x x x x x x x M
eJaminm lan%urile alternante
1/
x
.
x
.*
x
/
x
3
x
1
x
-
x
+
x
=
x
>
x
)
Z ( ( ( ( ( ( ( ( ( Y
. ) > = - + 1 3 / .* .
x x x x x x x x x x P
i
Z ( ( ( ( ( ( ( ( Y
- = > ) + 1 3 / .* )
x x x x x x x x x P
(
atunci vIrfuri eJterioare tre#uiesc considerate a!roa!e toate vIrfurile
grafului( i anume5
.* 3 + - = > )
( ( ( ( ( ( x x x x x x x
0 <a mai mult decIt
atIt5 vIrful
)
x
( conform lan%ului P
.
( este vIrf eJterior( iar conform
lan%ului P
)
; vIrf interior0
Ca6 Kn ca6 general( graful orientat
4 2
X
M 5
se construiete !e
mul%imea tuturor vIrfurilor 3 ale grafului 50 7ou vIrfuri s i t se
unesc !rintr$un arc ce !ornete din s 8n t( dac 8n 5 eJist un lan%
alternant 8n ra!ort cu cu!laNul curent M( 8n care s i t sunt vIrfuri
eJterioare i t este urmtorul vIrf eJterior du! s 8n acest lan%0 &ste
clar c orice lan% de maNorare a cu!laNului cores!unde unui drum din
4 2
X
M 5
( ce !ornete dintr$un vIrf x4 li#er 8n graful 54 i se termin
8ntr$un vIrf 7( adiacent 8n 5 unui vIrf li#er0 Afirma%ia reci!roc 8ns(
du! cum uor ne !utem convinge( nu totdeauna are loc0 Adic( nu
orice drum din
4 2
X
M 5
cu !ro!rietatea men%ionat( re!re6int un
lan% de maNorare a cu!laNului curent 8n 50 "entru a ne convinge de
acest fa!t( vom construi !entru graful din fig0.- graful orientat
4 2
X
M 5
2ve6i fig0 .+40
Kn
4 2
X
M 5
eJist drumul
Z ( ( ( ( ( Y
/ 1 - + 3 .*
x x x x x x
8n care
.*
x
este un vIrf li#er 8n 5( iar
/
x
este adiacent 8n 5 vIrfului li#er
.
x
0 Acestui drum 8ns 8i cores!unde 8n 5 lan%ul
Z ( ( ( ( ( ( ( ( ( ( ( Y
. / 3 1 + - = + 1 3 / .* *
x x x x x x x x x x x x P
(
care la sigur nu este lan% de maNorare0 Kntr$adevr( dac s$ar acce!ta
acest lucru( atunci cu!laNul nou
3*
4 P 2 4 P 2
* *
M M M P P
va con%ine dou muc'ii adiacente
4 ( 2
+ =
x x
i
4 ( 2
+ -
x x
( ceea ce nu
!oate avea loc 8n virtutea defini%iei cu!laNului0 Mai mult ca atIt ;
*
P

nici nu este cel !u%in lan% sim!lu 8n 50
"g.$(
&Jem!lul studiat confirm i!ote6a5 cutarea lan%ului de
maNorare 8n ca6ul grafului ar#itrar este o !rocedur mai com!licat
decIt 8n ca6ul grafului #i!artit0 ?reut%ile 8n acest sens sunt datorate
eJisten%ei 8ntr$un graf ar#itrar a ciclurilor elementare de lungime
im!ar0 Cu siguran%( aici rolul decisiv 8l Noac nu orice ciclu
elementar de lungime im!ar( ci numai ciclurile cu un numr maJim
de muc'ii ale cu!laNului0 7ac lungimea ciclului elementar este
. ) + k ( atunci numrul de muc'ii ale cu!laNului 8n acest ciclu este k0
Astfel de cicluri le vom numi M$saturate0 "entru a ocoli ciclurile M$
saturate( vom construi !entru 5 un graf s!ecial0
7ac , este un ciclu M$saturat 8n graful 5( atunci se
construiete un graf nou
4 9 : 9 2 9 , 2 , 3 , 5
( unde 3S, se o#%ine
!in eliminarea din 3 a tuturor vIrfurilor ciclului , i adugarea unui
3.
x
.
x
.*
x
/
x
3
x
>
x
1
x
-
x
+
x
)
x
=
vIrf nou
,
x
2cu alte cuvinte( toate vIrfurile ciclului , se 8nlocuiesc
!rintr$un vIrf nou
,
x
40
Mul%imea de muc'ii , 2 9 se o#%ine din 2 !rin eliminarea
tuturor muc'iilor incidente vIrfurilor ciclului , i 8nlocuirea
muc'iilor de ti!ul
4 ( 2 u v
( unde v nu este vIrf al ciclului ,( iar u
este vIrf al acestui ciclu( !rintr$o singur muc'ie
4 ( 2
,
x v
0 Cutarea
lan%ului de maNorare 8ntr$un graf 5 se face luInd 8n considera%ie
urmtoarele dou afirma%ii5
1? TntrAun graf 5 care conine un ciclu MAsaturat , exist/ lan
de ma)orare a cupla)ului curent M4 dac/ i numai dac/ un astfel de
lan exist/ -n graful , 59 @
2? 9ac/ -n , 59 exist/ un lan de ma)orare4 ce conine vrful
,
x
4 atunci -n graful 5 lanul de ma)orare trece printrAo poriune a
ciclului MAsaturat ,.
Cele s!use !or fi ilustrate !rin eJem!lul din fig0.10 Kn graful 5
eJist ciclul M$saturat
Z ( ( ( (000( ( ( ( (000( ( ( ( Y
* ) . ) ) ) . ) ) . ) ) ) > ) . *
x x x x x x x x x x x x ,
k k k ) ) ) ) +

0
Construind graful , 59 ( o#%inem trei lan%uri de maNorare a
cu!laNului5
Z ( ( ( ( ( Y
- = > ) . .
7 7 7 x 7 7
,
P
(
Z ( ( ( ( ( Y
3 1 + ) . )
7 7 7 x 7 7
,
P
(
i
Z ( ( ( ( ( Y
.. .* / ) . >
7 7 7 x 7 7
,
P
0
Acestor lan%uri le cores!und 8n graful ini%ial 5 lan%urile de
maNorare5
3)
Z ( ( ( 000( ( ( ( ( ( Y
- = > . ) . ) ) * ) .
X
.
7 7 7 x x x x 7 7
) k k +
P
(
Z ( ( ( 000( ( ( ( ( ( Y
3 1 + ) ) ) . * ) .
X
)
7 7 7 x x x x 7 7
)
P
(
Z ( ( ( ( ( ( ( ( Y
.. .* / > ) . * ) .
X
>
7 7 7 x x x x 7 7 P
0


"ig.$7
7in cele eJaminate( re6ult c dac 8n graful 5 eJist un ciclu
M$saturat
.
,
( atunci construim graful
.
9 , 5
0 7ac i acest graf
con%ine cicluri M$saturate( atunci continum !rocedura de construire
3>
x
.
*
x
)k<.
x
*
7
.
7
1
7
-
x
))
7
=
x
>
x
)
x
)k<2
x
)k
7
1
7
..
7
.*
7
/
x
))_.
x
));)
x
))<.
7
>
7
3
7
+
GC
x
C
7
.
7
1
7
-
7
=
7
1
7
..
7
.*
7
/
7
>
7
3
7
+
G/CC
a grafurilor noi( eJ!us mai sus( !In nu o#%inem un graf , 59 care
nu con%ine astfel de cicluri0 ?sim 8n graful , 59 un lan% de
maNorare a cu!laNului 2dac astfel de lan% eJist4 i 8n #a6a lui
resta#ilim lan%ul de maNorare 8n 50
Berificarea( dac 8n graf eJist cicluri M$saturate( ar !utea fi
fcut !rin a!licarea metodei de cutare 8n l%ime( !ornind dintr$un
vIrf li#er al grafului0
De.crierea a*g+rit-u*ui
8a.u* $. Considerm cu!laNul ini%ial MO0 Notm !rin
*
5

graful 5 !entru care se caut cu!laNul maJim0 Introducem un indice
* i 0
8a.u* #. 7ac 8n graf eJist un ciclu M$saturat( atunci reali6m
!asul +0 Kn ca6 contrar( reali6m !asul >0
8a.u* '. Construim graful orientat
4 2
X
M 5
i
!entru
i
5
8n
conformitate cu regulile de construire descrise anterior0
8a.u* 3. Cu aNutorul algoritmului de cutare 8n l%ime( !ornind
dintr$un vIrf al grafului
4 2
X
M 5
i
( care este vIrf li#er 8n
i
5
( cutm
un lan% de maNorare al cu!laNului 8n
i
5
0
a> 7ac un astfel de lan% nu eJist 8n
i
5
( atunci cu!laNul curent
M4 cunoscut 8n
*
5
4 este cu!laN maJim0 STO80
4> 7ac 8n
4 2
X
M 5
i
eJist drumul ce duce la o#%inerea lan%ului
de maNorare 8n
i
5
( atunci anali6Ind succesiv grafurile
i
5
(
. .
000( ( 5 5
i
(
5 5
*
o#%inem un lan% de maNorare P 8n
*
5
0
Trecem la !asul -0
8a.u* 5. Construim cu!laNul nou 8n
*
5
3=
4 P 2 4 P 2 M M M P P
0
Considerm * i i trecem la !asul )0
8a.u* (. Considerm . + i i 0 Construim graful
, 5 5
i i
9
.

0
Trecem la !asul )0
#.3. 8r+4*e-e
$> S se determine mul%imea de vIrfuri sta#il interior maJim
!entru graful "etersen 2fig0 .340

"ig. $9
#> S se demonstre6e c !entru orice ar#ore are loc
inegalitatea
)
4 2
*
n

( unde n este numrul de vIrfuri ale
ar#orelui0 S se aduc eJem!le de ar#ori cu n vIrfuri( !entru care
000 ( )
)
( .
)
(
)
4 2
*
+
1
1
1

+
1
1
1

1
1
1

n n n

&Jist oare ar#ore cu n vIrfuri !entru care
n 4 2
*

S
'> S se determine nucleul grafului "etersen 2fig0 .340
3-
3> S se construiasc un graf neorientat 8n care orice mul%ime
de vIrfuri sta#il eJterior minim nu este i sta#il interior0
5> Fie
4 : 2 2 3 5
un graf neorientat( care nu con%ine vIrfuri
i6olate0 S se demonstre6e c 8n 5 eJist mul%ime sta#il eJterior A(
astfel 8ncIt
A 3 P
de asemenea este mul%ime sta#il eJterior0
(> S se demonstre6e c dac graful neorientat
4 : 2 2 3 5
nu
con%ine vIrfuri i6olate( atunci
) 9 4 2
*
3 5
0 S se construiasc un
graf coneJ cu un numr !ar de vIrfuri !entru care
) 9 4 2
*
3 5
0
7> Kn ca6ul unui graf neorientat
4 : 2 2 3 5
( s se verifice
inegalitatea
4 2 4 2
* *
5 5
9> Fie
4 2n
,
G
familia tuturor grafurilor neorientate i coneJe
cu n vIrfuri0 S se construiasc graful
4 2
*
n 5
,
G
!entru care este
adevrat egalitatea
{ } 4 2 5 4 2 maJ 4 2
. * .
n 5 5 5
,
G
0
%> S se verifice afirma%ia5 orice aco!erire de vIrfuri a unui graf
con%ine o aco!erite de vIrfuri minim0 Rs!unsul s se argumente6e0
$:> S se verifice afirma%ia5 orice mul%ime de vIrfuri sta#il
interior a unui graf neorientat se con%ine 8ntr$o mul%ime sta#il
interior maJim0 Rs!unsul s se argumente6e0
$$> "entru un graf neorientat
4 : 2 2 3 5
( s se verifice dac
sunt adevrate inegalit%ile5
4 2 4 2
. *
5 5
(
4 2 4 2
* .
5 5
0
3+
$#> S se formule6e condi%ia necesar i suficient !entru
egalitatea
4 2 4 2
. .
5 5
0
$'> S se verifice inegalitatea
4 2 4 2
.
5 5
0
Kn ca6ul unui rs!uns afirmativ( inegalitatea s se demonstre6e0
Kn ca6 contrar( rs!unsul s se argumente6e !rintr$un eJem!lu
concret0
$3> S se demonstre6e sau s se res!ing !rintr$un eJem!lu
concret afirma%ia5 orice cu!laN al grafului se con%ine 8ntr$un cu!laN
maJim0
$5> Fie M i D dou cu!laNuri ale grafului 5( care satisfac
condi%iile
D M
(
D M >
0
S se demonstre6e c 8n graful 5 eJist alte dou cu!laNuri
\ M i \ D ( care satisfac condi%iile5
\ \ D M
(
. \ M M
(
. \ + D D
(
D M D M \ \
0
$(> Fie v un vIrf ar#itrar al grafului 0 Notm !rin
4 2
*
v

numrul de com!onente coneJe cu un numr im!ar de vIrfuri ale
grafului v 0 2 v este graful ce se o#%ine din ar#orele du!
eliminarea vIrfului v40 S se demonstre6e c 8n eJist un cu!laN
31
!erfect( dac i numai dac
. 4 2
*
v
!entru toate vIrfurile
ar#orelui0
$7> S se demonstre6e c 8ntr$un graf #i!artit cu m muc'ii are
loc inegalitatea
4 2 4 2
* *
5 5 m
(
care se transform 8ntr$o egalitate( dac i numai dac 5 este un graf
#i!artit com!let0
$9> S se demonstre6e c 8ntr$un graf #i!artit 5 are loc
egalitatea
4 2 4 2
* .
5 5
0
$%> S se demonstre6e c 8ntr$un graf #i!artit
4 : ( 2
) .
2 3 3 5
(
n 3 3
) .
eJist cu!laN format din n
muc'ii( dac i numai dac !entru orice su#mul%ime de vIrfuri
.
3 C se res!ect condi%ia5
{ } 0 8ncIt astfel 5
. )
C 7 x 3 7 3 x
#:> S se construiasc un graf neorientat cu + vIrfuri( diferit de
+
$
( 8n care orice mul%ime sta#il interior se con%ine 8ntr$o mul%ime
sta#il interior maJim0 &Jist oare grafuri cu !ro!rietatea indicat
!entru orice numr de vIrfuri nS
#$> S se afle cardinalul mul%imii de vIrfuri sta#ile eJterior
minime !entru ciclurile sim!le de lungimea n( notate !rin
n
,
( i
!entru lan%urile elementare de lungimea n( notate !rin
n
1
0
##> Fie 5 un graf neorientat( ale crui mul%imi de vIrfuri
5
3

i muc'ii
5
2
re!re6int mul%imile de vIrfuri i muc'ii ale unui
!oliedru regulat din
>
G
0 ?raful 5 se mai numete sc'elet al
!oliedrului res!ectiv0 S se determine5
33
a4 numrul maJim de vIrfuri din 5( care formea6 o mul%ime
sta#il interior:
#4 numrul minim de vIrfuri din 5( care formea6 o mul%ime
sta#il eJterior:
c4 numrul maJim de muc'ii din 5( care formea6 un cu!laN0
#'> S se construiasc toate grafurile neorientate 5 cu + vIrfuri
i un numr minim de muc'ii( !entru care se res!ect inegalitatea
k 5 < 4 2
*

(
unde
+ ( - ( = ( > k
0
#3> S se estime6e !rintr$un interval de !e aJa real numrul de
mul%imi sta#ile interior ale unui graf neorientat cu n vIrfuri i m
muc'ii0 Ce se 8ntIm!l cu acest interval odat cu creterea numrului
de muc'ii din graf0
#5> S se descrie grafurile 5 ce !osed !ro!rietatea5 la
eliminarea oricrei muc'ii
5
2 u
o#%inem un graf nou 5 < u !entru
care se res!ect inegalitatea
4 2 4 2
* *
5 u 5 >
0
#(> S se demonstre6e c !rintre ase !ersoane luate la
8ntIm!lare numaidecIt se vor gsi trei care se cunosc 8ntre ele( sau
invers ; nu se cunosc0
#7> S se demonstre6e c !rintre / n !unctre luate 8n !lan
numaidecIt se vor gsi cinci !uncte( care !ot fi considerate vIrfuri
ale unui !oligon conveJ0
#9> S se verifice dac este adevrat afirma%ia5 !e o ta#l de
a' se !ot ae6a o!t dame astfel( 8ncIt nici una s nu fie atacat de
alt dam0 Care ar fi rs!unsul 8n ca6ul a mai mult decIt o!t dameS
Rs!unsul s se argumente6e 8n termenii mul%imilor sta#ile interior0
3/
#%> S se determine numrul minim de dame 2sau alte figuri ;
cai( ne#uni( turnuri4 care !ot fi !lasate !e ta#la de a' astfel( 8ncIt
fiecare !trat al ta#lei s fie atacat de cel !u%in una dintre !iesele
!lasate0 Argumenta%i rs!unsul 8n termenii mul%imilor sta#ile
eJterior0
':> S se construiasc cu!laNuri !erfecte 8n grafuri >$regulate
cu + n vIrfuri( care nu con%in !uncte de articula%ie0 S se
demonstre6e c orice graf >$regulat fr !uncte de articula%ie con%ine
cu!laN !erfect0
'$> S se verifice corectitudinea urmtoarei afirma%ii5 orice
cu!laN maJim 8ntr$un ar#ore con%ine cel !u%in o muc'ie sus!endat
din 2muc'ie sus!endat este muc'ia incident unui vIrf de grad
unu40 Rs!unsul s se argumente6e0
'#> S se caracteri6e6e ar#orii !entru care are loc egalitatea
4 2 4 2 4 2 4 2
. . * *

0
S se dea eJem!le de astfel de ar#ori0
''> S se demonstre6e c 8n orice graf 5 cu n vIrfuri are loc
inegalitatea
)
4 2
.
n
5
0
S se dea eJem!le de grafuri 8n care
000 ( .
)
(
)
4 2
.
+
1
]
1

1
1
1

n n
5
&Jist oare grafuri cu
n 5 4 2
.

S
'3> Fie
k
, !uterea de gradul . k a unui ciclu sim!lu , cu n
vIrfuri0 S se eJ!rime 8n func%ie de
4 2
*
,
numrul de sta#ilitate
intern a grafului
k
, 0 &ste oare adevrat egalitatea
/*
. 4 2 4 2
.
* *

k k
, ,
S
Rs!unsul s se com!lete6e cu unele eJem!le concrete0
'5> S se demonstre6e c !entru orice ar#ore i orice numr
4 2 k
eJist k cu!laNuri
k
M M M 000( ( (
) .
( ce formea6 o
divi6are a mul%imii de muc'ii

2
( adic
k
M M M 2 000
) .

(

) i
M M
( !entru
) i k ) i ( ( . (
(
iar cu!laNurile
k i M
i
( . (
satisfac condi%ia
1
1
1


1
]
1

k
m
M
k
m
i
( unde
2 m
0
'(> S se dea eJem!le de grafuri !entru care mul%imea de
muc'ii 2 formea6 un cu!laN0 Kn ce condi%ii acest cu!laN va fi
!erfectS
'7> S se determine toate grafurile !entru care eJist cu!laN
maJimal format dintr$o singur muc'ie0
/.
III. COLORAREA !RA"URILOR
"ro#lemele de colorare ocu! un loc im!ortant 8n teoria
grafurilor atIt !rin re6ultatele teoretice im!untoare( cIt i !rin
utili6area acestora la solu%ionarea !ro#lemelor !ractice0 "rintre
!ro#lemele !ractice( la solu%ionarea crora se folosesc re6ultatele ce
%in de colorarea elementelor grafului( !ot fi men%ionate !ro#lemele ce
a!ar 8n !rocesul de !lanificare a !rocesului de !roducere( !ro#lemele
de stocare i trans!ortare a mrfurilor( !ro#lema orarului etc0
'.$. C+*+rarea <=r)uri*+r
Fie
4 : 2 2 3 5
un graf ar#itrar i k un numr natural0
A!lica%ia
{ } k 3 f (000( ) ( . 5
se numete kAcolorare a vrfurilor
grafului 5 0 Numrul
4 2x f
asociat vIrfului x se numete culoare a
acestui vIrf0
De)ini/ia '.$.$. ; kAcolorare4 determinat/ de aplicaia
L (000( ) ( . M 5 k 3 f
4 se numete corect/4 dac/ pentru oricare dou/
vrfuri adiacente x i 7 ale grafului 5 are loc relaia
4 2 4 2 7 f x f
0
?raful !entru care eJist o k$colorare corect se numete kA
colorabil0 inInd cont de defini%ia >0.0.( s$ar !utea de s!us c o
colorare corect a vIrfurilor grafului 5 determin o !arti%ie a
mul%imii de vIrfuri 3 8n k l su#mul%imi( adic
l
3 3 3 3 000
) .
U U
( k l (

) i
3 3 I
( !entru
l ) l i ) i ( . ( ( . (
0
Fiecare clas
l i 3
i
(000( ) ( . (
este o mul%ime sta#il interior(
numit clasa culorii i0
/)
De)ini/ia '.$.#. Dum/rul minim k pentru care graful 5 este kA
colorabil se numete num/r cromatic al grafului i se notea./ prin
4 25
.
Kn ca6ul
k 5 4 2
( se mai s!une c graful 5 este k$cromatic0
@ k$colorare corect a grafului 5 se numete minimal( dac
4 25 k
0
"ig.$%
Kn ca6ul
k 5 4 2
( se mai s!une c graful 5 este k$cromatic0
@ k$colorare corect a grafului 5 se numete minimal dac
4 25 k
0
"entru graful 5 din fig0./( este indicat o colorare corect a
vIrfurilor acestuia 8n = culori0 Totodat( men%ionm c acest graf nu
!oate fi colorat corect 8ntr$un numr mai mic de culori0 Kntr$adevr(
o#servm c 5 con%ine un ciclu de lungime im!ar
Z ( ( ( ( ( Y
. - = > ) .
x x x x x x
i !rin urmare vIrfurile lui !ot fi colorate 8n
cel !u%in > culori0 7eoarece
i
x x
+
(
- ( . i
( !entru colorarea
acestui vIrf se va folosi nea!rat o a !atra culoare0 Astfel o#%inem
= 4 2 5
0
I> ,rearea unui orar. &ste necesar s se %in un anumit numr
de lec%ii 8ntr$o !erioad cIt mai scurt de tim!0 Se cunoate c fiecare
/>
lec%ie durea6 o or academic i unele lec%ii nu !ot fi %inute simultan
2de eJem!lu( dac sunt %inute de acelai !rofesor40
Bom eJamina graful 5 vIrfurile cruia cores!und #iNectiv
lec%iilor i orice dou vIrfuri sunt adiacente( dac i numai dac
lec%iile cores!un6toare nu !ot fi %inute 8n acelai tim!0 Uor se
o#serv c orice colorare corect a acestui graf determin un orar
!osi#il 2lec%iile ce cores!und vIrfurilor din clasa cu aceeai culoare
!ot fi !redate concomitent4 i invers( orice orar !osi#il determin o
colorare corect a grafului 5 0 @rarele o!timale cores!und
colorrilor corecte minimale( iar numrul
4 25
indic tim!ul minim
8n care !ot fi %inute toate lec%iile0
II> 1roblema reparti./rii utila)ului. Fie date mul%imile
L (000( ( M
) . n
v v v :
de lucrri i
L (000( ( M
) . m
s s s C
de dis!o6itive0
"entru efectuarea fiecrei lucrri( sunt necesare anumite dis!o6itive
i o !erioada de tim!( aceeai !entru toate lucrrile0 Kn !lus( fiecare
dis!o6itiv nu !oate fi utili6at simultan la cIteva lucrri0 S se
distri#uie dis!o6itivele astfel ca tim!ul necesar !entru efectuarea
tuturor lucrrilor s fie minim0
Kn ca6ul acestei !ro#leme( construim graful 5 cu mul%imea de
vIrfuri : 2vIrfurile cores!und #iNectiv lucrrilor4 8n care dou
vIrfuri
i
v
( )
v
2
) i
4 sunt adiacente( dac i numai dac !entru
efectuarea lucrrilor
i
v
( )
v
este necesar cel !u%in un dis!o6itiv
comun0 La o colorare corect a grafului 5 ( lucrrile ce cores!und
vIrfurilor clasei cu aceleai culori !ot fi efectuate concomitent( iar
tim!ul minim de reali6are a tuturor lucrrilor este determinat de
numrul
4 25
0
"entru unele grafuri numrul cromatic se determin destul de
sim!lu0 7e eJem!lu(
n $
n
4 2
(
. 4 2 n e $
n

(
) 4 2
(

m n
$

i
> 4 2
. )

+ n
,
0
Kn ca6 general( determinarea numrului cromatic al unui graf i
construirea unei

$colorri este o !ro#lem com!licat0 7e aceea(


un interes deose#it !re6int estimrile numrului cromatic eJ!rimate
/=
!rin diveri !arametri ai grafului( care se calculea6 relativ uor0
Bom men%iona unele estimri ale numrului cromatic5
a> 7ac 5 este un graf coneJ necom!let i
> 4 2 5
( atunci
4 2 4 2 5 5
2aici
4 25
este gradul maJim al vIrfurilor grafului
54:
4> S notm !rin
4 25 G
familia su#grafurilor( generate de toate
su#mul%imile de vIrfuri ale grafului 5( iar !rin
4 2>
gradul minim
al vIrfurilor grafului
4 25 > G
0 &ste adevrat inegalitatea5
4L 2 M maJ . 4 2
4 2
> 5
5 >

G
+
:
c> 7ac cunoatem numrul de sta#ilitate intern
4 2
*
5
al
grafului 5 cu n vIrfuri( atunci se verific urmtoarea estimare du#l
a numrului cromatic
4 25
5
. 4 2 4 2 4 2 9
* *
+ 5 n 5 5 n
:
0>
4 2 4 2 5 5
( unde
4 25
re!re6int densitatea grafului:
e>
4 ) 2 4 2
) )
m n n 5
( unde n este numrul de vIrfuri ale
grafului 54 iar m ; numrul de muc'ii:
)> )
.
4 4 . 2 ) 2 . 4 2 n n m 5 +
0
Bom eJamina 8n continuare anumi%i algoritmi folosi%i la
determinarea numrului cromatic i a colorrii o!timale a vIrfurilor
unui graf ar#itrar0 &J!unem mai 8ntIi !rinci!iile metodei !rogramrii
dinamice( folosite la ela#orarea algoritmilor res!ectivi0
'.#. Met+0a 1r+gra-6rii 0ina-ice
Su#graful r$cromatic
r
C
5
al grafului
( ) 2 3 5 :
generat de
mul%imea
3 C
r

se numete r $subgraf0 Bom s!une c
r
C
5
este
r $subgraf maximal4 dac !entru orice
r
C >
su#graful
>
5
nu
este r$cromatic0 Uor se o#serv c su#graful a crui mul%ime de
/-
vIrfuri coincide cu una din mul%imile sta#ile interior maJime ale
grafului 5 este 1$su#graf maJimal al lui 50
inInd cont de no%iunile introduse( !utem s!une c numrul
cromatic al grafului 5 este cel mai mic numr r !entru care eJist cel
!u%in un 1$su#graf maJimal al lui 5 cu mul%imea de vIrfuri
3 C
r

0
Bom anali6a rela%iile recurente ce sta#ilesc legtura dintre r$
su#grafurile i 2r$14$su#grafurile maJimale ale grafului 5 0
S notm !rin
. r
F
familia tuturor BrA1?$su#grafurilor
maJimale din 5( iar !rin
)
r
C
.
mul%imea de vIrfuri a su#grafului cu
numrul de ordine ) din familia
. r
F
0 Atunci 4 2
.
) k
5 C este
mul%imea de vIrfuri a 1$su#grafului maJimal cu numrul de ordine k
al grafului
)
5 generat de mul%imea de vIrfuri
)
r
C 3
.
( adic de
vIrfurile grafului 5 ce nu a!ar%in 2r$.4$su#grafului
)
r
C
5
.
0 Bom
construi familia r$su#grafurilor maJimale ale grafului 55
Mai 8ntIi se construiesc mul%imile
k )
r
i
C C >
. .

( 2.4
.
( ( ) ( .

r
= )
(
)
= k
.
( ( ) ( . ( unde
. r
=
i
)
=
.
sunt res!ectiv
numrul Br$1?$su#grafurilor i
)
=
.
; numrul 1$su#grafurilor0
Notm !rin familia tuturor mul%imilor
. .
( ( ) ( . (


r
) i
= = i > 0 Atunci familia r$su#grafurilor
r

!oate fi
descris astfel5
{
i i
r
> > 5 b 4 2 i
) i
> > !entru orice
} ) i >
)
(
0 2)4
Rela%iile recurente 2.4 i 2)4 se a!lic la generarea succesiv a
1$su#grafurilor maJimale( 2$su#grafurilor maJimale( etc0 i
determinarea numrului cromatic al grafului 50
Bom eJ!une acum un algoritm ce determin numrul cromatic
al grafului 5 i colorarea care cores!unde acestui numr0
/+
8a.u* $. Considerm rO.0 7eterminm mul%imile de vIrfuri
)
r
C (
r
= ) ( ( ) ( .
( ale r$su#grafurilor maJimale ale grafului 50 2Se
consider c numrul acestor mul%imi este
r
=
04
7efinim mul%imea } {
r
)
r
= ) C F ( ( ) ( . b i lum
. )
0
8a.u* #. 7eterminm o mul%ime nou sta#il interior
.
C
a
grafului
)
5 generat de mul%imea de vIrfuri
)
r
C 3 0
7ac mul%imea
.
C
eJist( atunci trecem la !asul >0
7ac toate mul%imile sta#ile interior ale grafului
)
5 au fost
deNa determinate( atunci trecem la !asul +0
8a.u* '. Se construiete mul%imea
.
C C C
)
r
0
8a.u* 3. 7ac 3 C ( atunci . + r este numrul cromatic al
grafului 5( iar su#mul%imile mul%imii C determin colorarea grafului
50 2Su#mul%imile res!ective se marc'ea6 i se !strea6 se!arat04
STO80
7ac 3 C ( atunci trecem la !asul -0
8a.u* 5.
Gi> 7ac eJist o mul%ime
F C \
cu !ro!rietatea
\ C C
(
atunci trecem la !asul )0
Gii> 7ac eJist o mul%ime
F C \
!entru care \ C C ( atunci
efectum transformarea5
{ } \ C F F
0
"rocedm 8n aa mod cu toate mul%imile
F C \
ce !osed
!ro!rietatea indicat0
Considerm
{ } C F F
i trecem la !asul )0
Giii> Kn ca6 cI nici una dintre condi%iile 2i4 i 2ii4 nu se
8nde!linete( considerm
{ } C F F
i trecem la !asul )0
/1
8a.u* (. 7ac
r
= ) <
( atunci considerm )R)_1 i trecem la
!asul )0 7ac
r
= )
( atunci fiJm
. )
( . + r r (
b b F =
r

i
trecem la !asul )0
Bom men%iona c algoritmul eJ!us nu determin toate
colorrile !osi#ile cu r_1 culori ale grafului( dar asigur generarea
colorrilor o!timale ale grafului0
E5e-1*u. S eJaminm acum algoritmul !ro!us mai sus 8n
ca6ul grafului 5( re!re6entat 8n fig0)*0
"ig.#:
8a.u* $. Mul%imile de vIrfuri ale 1$su#grafurilor maJimale
sunt5
{ } ; , , + = .
.
.
C { } ; , , - > )
)
.
C { } ; , , 1 - )
>
.
C { } + )
=
.
, C 0
7eci
= =
i { }
=
.
>
.
)
.
.
.
C C C C F , , , 0
A!licm 2de un numr necesar de ori4 !aii )$- ai algoritmului5
"entru
.
.
C 5
/3
7
1
2
4
5
6
3
8a.u* #. Mul%imea sta#il interior a grafului
.
5 generat de
mul%imea de vIrfuri
{ } 1 - > ) , , ,
este
{ } - > )
.
, , C
0
8a.u* '.
{ } - > ) + = . , , , , C
0
8a.u* 5.
{ } [ ] - > ) + = . , , , , , F
0
8a.u* #.
{ } 1 - )
.
, , C
0
8a.u* '.
{ } 1 - ) + = . , , , , C
0
8a.u* 5.
{ } { } [ ] 1 - ) + = . - > ) + = . , , , , , , , , , , F
0
"entru
)
.
C 5
8a.u* #. "entru graful
)
5 generat de mul%imea de vIrfuri
{ } 1 + = . , , ,
mul%imea sta#il interior este
{ } + = .
.
, , C
0
8a.u* '.
{ } + = . - > ) , , , , C
este eJclus conform !asului - 2i40
8a.u* #.
{ } 1
.
C
0
8a.u* '.
{ } 1 - > ) , , C
0
H8a.u* 5.
{ } { } { } [ ] 1 - > ) 1 - ) + = . - > ) + = . , , , , , , , , , , , , , F
0
"entru
>
.
C 5
8a.u* #. Mul%imea sta#il interior a grafului
>
5 generat de
mul%imea de vIrfuri
{ } + = > . , , ,
este
{ } + = .
.
, , C
0
8a.u* '.
{ } + = . 1 - ) , , , , C
este eJclus conform !asului - 2i40
8a.u* #.
{ } >
.
C
0
8a.u* '.
{ } > 1 - ) , , C
este eJclus conform !asului - 2i40
"entru
=
.
C 5
8a.u* #. "entru graful
=
5 generat de mul%imea de vIrfuri
{ } 1 - = > . , , , ,
mul%imea sta#il interior este
{ } = .
.
, C
0
8a.u* '.
{ } = . + ) , , C
este eJclus conform !asului - 2i40
8a.u* #.
{ } - >
.
, C
0
8a.u* '.
{ } - > + ) , , C
este eJclus conform !asului - 2i40
8a.u* #.
{ } 1 -
.
, C
0
8a.u* '.
{ } 1 - + ) , , C
este eJclus conform !asului - 2i40
//
Astfel( la finele !rimei itera%ii( care a!lic !aii )$- ai
algoritmului( se o#%ine familia F 2!asul marcat cu asterisc4 de
mul%imi
)
C
)
ce cores!und 2$su#grafurilor maJimale0 Ac%ionInd 8n
mod analogic( !ot fi construite 3$su#grafurile maJimale etc0
Kn ca6ul grafului 5 din fig0 )*( continuInd reali6area !as cu !as
a algoritmului( !rintre mul%imile ce cores!und 3Asu#grafurilor
maJimale se va o#%ine i mul%imea
{ } 1 > - ) + = .
.
>
, , , , C
care
satisface condi%ia !asului =5
3 C
.
>
0 7eci numrul cromatic al
grafului 5 este egal cu >( iar colorarea o!timal este definit de
!arti%ia 2a mul%imii 345
{ } + = . , ,
(
{ } > - ) , ,
(
{ } 1
0 7ac vom continua
a!licarea algoritmului( atunci vom o#%ine 8nc o colorare a vIrfurilor
grafului5
{ } > 1 - ) + = . , , , ,
0
Re-arc6. Men%ionm( c colorarea
{ } > -,
(
{ } + = . , ,
(
{ } 1 ),
i
alte colorri de acest ti!( dei sunt corecte( nu se generea6 de
algoritmul eJ!us mai sus0
'.'. A*g+rit-u* 0e triere i-1*icit6
"entru a determina numrul cromatic al grafului !oate fi a!licat
un algoritm sim!lu dar destul de efectiv( algoritmul de triere
im!licit( ce folosete ar#orele de cutare0
8a.u* $. @rdonm mul%imea de vIrfuri a grafului 5 8ntr$un mod
ar#itrar i vIrfului
.
x
8i a!licm culoarea cu numrul.0
8a.u* #. 7ac toate vIrfurile grafului au fost colorate( atunci
sco!ul este atins0 STO8.
Kn ca6 contrar( trecem la !asul >0
.**
8a.u* '. "rimului vIrf necolorat
i
x
i se atri#uie ]cea mai mic^
culoare( care nu a fost folosit la colorarea vIrfurilor adiacente cu
i
x
0 Trecem la !asul )0
&ficien%a algoritmului eJ!us crete considera#il( dac se %ine
cont de urmtoarele sugestii5
.4 "entru o ordonare ar#itrar a vIrfurilor orice culoare
)
( care
!oate fi atri#uit vIrfului
i
x
( satisface rela%ia
i )
0
)4 Mul%imea de vIrfuri a grafului se ordonea6 astfel ca !rimele
vIrfuri 8n aceast ordonare s genere6e o clic maJim0 Kn
acest ca6( vIrfurile ce formea6 clica maJim vor fi colorate
8n culori distincte( iar vite6a de reali6are a algoritmului crete0
'.3. Met+0e euri.tice 0e c+*+rare
&Jist un ir de !roceduri euristice de colorare a grafurilor care(
8n ca6ul grafurilor de dimensiuni mari( asigur determinarea
numrului cromatic cu o a!roJimare #un0
'.3.$. Met+0a .ucce.i<6
AranNm vIrfurile grafului 8ntr$o ordine necresctoare a
gradelor i atri#uim !rimului vIrf din lista ordonat culoarea .0
"arcurgem lista i atri#uim culoarea . fiecrui vIrf neadiacent cu nici
unul din vIrfurile deNa colorate cu aceast culoare0 A!oi revenim la
!rimul vIrf necolorat0 Atri#uim acestui vIrf culoarea ) i din nou
!arcurgem lista ordonat a gradelor vIrfurilor( colorInd cu culoarea
) fiecare vIrf 8nc necolorat i neadiacent cu nici unul din vIrfurile
deNa colorate cu aceast culoare0 "rocedeul se re!et !In vor fi
colorate toate vIrfurile grafului0 Numrul de culori utili6ate la
aceast colorare este o a!roJimare a numrului cromatic al grafului0
Algoritmul eJ!us !oate fi modificat0 Una din modificrile
sim!le const 8n reordonarea vIrfurilor necolorate du! fiecare eta!
.*.
de colorare0 BIrfurile necolorate se rearanNea6 8n ordinea
necresctoare a gradelor sale relative0 "rin grade relative vom
8n%elege gradele vIrfurilor 8n su#graful o#%inut din graful ini%ial du!
eliminarea vIrfurilor deNa colorate0 7ac dou vIrfuri vor avea grade
egale( atunci ordinea a!ari%iei acestora 8n lista ordonat este aleatorie0
Notm !rin
i
d
gradul vIrfului
i
x
0 ?radul
)
i
d
este numrul
de lan%uri distincte de lungimea ) ce !ornesc din vIrful
i
x
0
Reordonarea vIrfurilor
i
x
( iR1(000n !oate fi fcut i 8n #a6a
gradelor
)
i
d
( dac gradele
i
d
ale acestora coincid0 Kn ca6 cI atIt
gradele
i
d
( cIt i gradele
)
i
d
ale vIrfurilor coincid( ordonarea !oate
fi fcut du! gradele
>
i
d
etc0
'.3.#. Met+0a 0iB+t+-iei
Fie
.
x
i
)
x
dou vIrfuri neadiacente ale grafului
( ) 2 3 5 :
(
n 3 b b
( care urmea6 a fi colorate0 Bom considera dou clase de
colorri ale grafului 50 @ clas con%ine toate colorrile 8n care
vIrfurile
.
x
i
)
x
au aceeai culoare( iar cealalt clas const din
colorrile 8n care
.
x
i
)
x
sunt colorate diferit0 Uor se o#serv c
aceste dou clase de colorri se eJclud reci!roc0 @rice colorare
fe6a#il a grafului 5 a!ar%ine uneia din cele dou clase distincte0 Kn
!rimul ca6 2dac colorarea grafului a!ar%ine !rimei clase4( graful 5
se colorea6 la fel ca i graful 5
O
cu . n vIrfuri( care se o#%ine 8n
urma conto!irii vIrfurilor
.
x
i
)
x
8ntr$un vIrf nou
.
O
x
( adiacent
cu toate vIrfurile din
4 2 4 2
) .
x D x D
2!rin
4 2
i
x D
se notea6
vecintatea vIrfului
i
x
40 Kn al doilea ca6( deoarece
.
x
i
)
x
o#%in
culori distincte( inde!endent de fa!tul sunt sau nu adiacente aceste
vIrfuri( graful 5 este colorat la fel ca i graful
4 ( 2
+ +
2 3 5
( care
se o#%ine du! adugarea muc'iei
4 ( 2
) .
x x
8n 50 ?rafurile 5 i
+
5 le vom numi grafuri reduse ale grafului 5.
.*)

"ig.#$
7eoarece cele dou clase con%in toate colorrile !osi#ile ale
grafului( re6ult c 44 2 4( 2 min2 4 2
+
5 5 5 0 Men%ionm c
am#ele grafuri reduse 5 i
+
5 sunt mai ]a!roa!e^ de graful
com!let decIt graful 5( dat fiind fa!tul c
) ( . 4( 2 4
O
2
.
i x D x D
i
( i
4 2 4 2
. .
x D x D
+
( 4 2 4 2
) )
x D x D
+
0
Cercetm 8n continuare grafurile 5 i
+
5 0 "entru fiecare din
aceste grafuri( alegem dou vIrfuri ar#itrare neadiacente i a!licm
!rocedura descris mai sus( o#%inInd astfel
.*>
x
.
x
)
x
=
x
1
x
-
x
+
x
+
7
.
7
>
7
+
7
-
7
)
7
=
7
1
44 2 4( 2 4( 2 4( 2 min2 4 2
+ + +
+
5 5 5 5 5 0
"rocedeul se re!et !In cInd orice graf redus nou nu va mai
con%ine nici o !erec'e de vIrfuri neadiacente0 Un eJem!lu este
!re6entat 8n fig0).0 Astfel(
4 25
va fi numrul minim dintre
numerele cromatice ale grafurilor com!lete ce nu mai !ot fi reduse0
Colorarea o!timal a grafului 5 este determinat de colorarea
grafului com!let cu un numr minim de vIrfuri( o#%inut ca re6ultat al
a!licrii metodei di'otomiei( la fiece !as al creia( !erec'ea de
vIrfuri conto!ite o#%ine aceeai culoare0
'.5. C+*+rarea -ucBii*+r
Fie
4 : 2 2 3 5
un graf ar#itrar( iar k un numr natural0
De)ini/ia '.5.$. Luncia g4 care pune -n coresponden/ fiec/rei
muc%ii e din graful 5 un num/r gBe? din mulimea
{ } k ( ( ) ( .
se
numete kAcolorare a muc%iilor grafului.
7ac g este o colorare a muc'iilor grafului i
c e g 4 2
( vom
s!une c muc'ia e are culoarea c0 Mul%imea tuturor muc'iilor
colorate cu aceeai culoare c formea6 clasa culorii c0 Colorarea
muc'iilor grafului este corect/4 dac muc'iile adiacente au culori
distincte0 ?raful 5 se numete k$colorabil4 dac acesta !osed o k$
colorare corect a muc'iilor0
De)ini/ia '.5.#. Dum/rul minim k4 pentru care exist/ o kA
colorare corect/ a muc%iilor grafului 54 se numete indice cromatic
al grafului i se notea./ prin
4 2 \ 5
. Tn ca.ul
k 5 4 2 \
4 se mai
spune c/ graful 5 este kAcromatic.
Bom men%iona nite estimri destul de eJacte ale indicelui
cromatic5
.*=
a> 7eoarece 8n orice colorare corect a muc'iilor grafului 5
muc'iile incidente unui vIrf au culori distincte( este adevrat
rela%ia5
4 2 4 2 \ 5 5
( unde
4 25
este gradul maJimal al
vIrfurilor grafului 50
4> "entru orice graf 54 este adevrat urmtoarea estimare du#l
a indicelui cromatic
. 4 2 4 2 \ 4 2 + 5 5 5
0
c> "entru unele clase de grafuri( valoarea indicelui cromatic se
determin eJact5
. ) . 4 2 4 2 \
. ) . )
+ +
+ +
n $ $
n n

(
. ) 4 2 4 2 \
)
n $ 5
n

(
unde
r
$
este un graf com!let cu r vIrfuri0
0> "entru orice graf #i!artit 54 are loc egalitatea
4 2 4 2 \ 5 5
0
"entru a determina o colorare corect a muc'iilor i indicele
cromatic al unui graf( !utem a!lica algoritmul de triere im!licit
eJ!us 8n c >0>( %inInd cont c o#iectul colorrii sunt muc'iile
grafului0
'.(. 8r+4*e-e
$. S se determine numerele cromatice i indicii cromatici ai
grafurilor
n
$
i n n
$
( 0
#. S se determine numerele cromatice ale grafurilor5
.*-

'. S se demonstre6e c vIrfurile unui graf !lan !ot fi colorate cu +
culori0
3. S se demonstre6e !rin induc%ie c !entru orice graf !lan 5 se
verific inegalitatea
- 4 2 5
0
5. S se construiasc un graf
.
5
cu numrul cromatic
> 4 2
.
5

i un graf
)
5
cu numrul cromatic
= 4 2
)
5
( care nu con%in
triung'iuri0
(. BIrfurile grafului 5 sunt numerotate 8n ordinea cresctoare a
gradelor0 S se demonstre6e c dac = este cel mai mare numr
!entru care este adevrat inegalitatea
. 4 2 +
k
v d =
( atunci
= 5 4 2
0
7. S se demonstre6e c
. 4 2 + l 5
( unde l este lungimea celui
mai lung lan% elementar 8n graful 50
9. S se determine indicii cromatici !entru grafurile5

%. Fie d gradul maJim al vIrfurilor grafului 50 S se demonstre6e
inegalit%ile5
a4
. 4 2 + d 5
(
#4
. 4 2 \ + d 5
0
$:. S se demonstre6e c indicele cromatic al grafului com!let
n
$

este
.*+

'

!ar0 !entru ( .
( im!ar !entru (
4 2 \
n n
n n
5
$$. Fie 5 com!lementarul grafului 5 cu n vIrfuri0 S se
demonstre6e urmtoarele inegalit%i !e care le verific numrul
cromatic5
. 4 2 4 2 ) + + n 5 5 n
(
= 9 4 . 2 4 2 4 2
)
+ n 5 5 n
0
$#. Se desenea6 un numr ar#itrar de linii unicursive 8n !lan(
astfel 8ncIt oricare trei din ele s nu ai# un !unct comun0
7efinim graful !lanar 5 considerInd !unctele de intersec%ie ale
liniilor dre!t vIrfuri ale grafului( iar segmentele dintre !unctele
de intersec%ie vecine dre!t muc'ii ale acestui graf0 S se arate
c
> 4 2 5
0
$'. S se demonstre6e c !entru orice graf nevid 54 eJist o !arti%ie
a mul%imii de vIrfuri(
) .
3 3 3
( astfel 8ncIt se verific
egalitatea
4 2 44 2 2 44 2 2
) ) . .
5 3 5 3 5 +
0
$3. Fie
( ) 2 5 :
un graf !lanar 'amiltonian0 S se demonstre6e
c fa%etele oricrei re!re6entri corecte 8n !lan a grafului 5 se
colorea6 cu = culori astfel 8ncIt oricare dou fa%ete ce au
muc'ii comune sunt colorate 8n mod diferit0
$5. ?raful 5 se numete critic4 dac du! eliminarea unui vIrf
ar#itrar se o#%ine un graf al crui numr cromatic este mai mic
decIt cel al grafului 50 S se demonstre6e afirma%ia5
n
$
este
graf critic !entru nd.( iar
n
,
este critic( dac i numai dac
numrul n este im!ar0
$(. S se demonstre6e c dac
( ) 2 3 5 :
este un graf critic( iar
3 C este o mul%ime intern sta#il 8n 5( atunci
. 4 2 4 \ 2 < 5 5
(
unde \ 5 se o#%ine din 5 la eliminarea su#mul%imii de vIrfuri
C0
.*1
$7. S se demonstre6e c orice graf critic kAcromatic5
a4 este coneJ:
#4 nu con%ine vIrfuri de articula%ie:
c4 gradul fiecrui vIrf nu este mai mic decIt k$.0
$9. S se dea un eJem!lu de graf( colorarea succesiv a vIrfurilor
cruia nu este minimal0
$%. Fie
4 25 G
mul%imea tuturor su#grafurilor generate de
su#mul%imile de vIrfuri ale grafului 50 S se demonstre6e c la
colorarea consecutiv a grafului 5 se utili6ea6 nu mai mult de
4L 2 M maJ .
4 2
>
5 >

G
+
culori0
#:. S se demonstre6e c( !entru orice ar#ore cu ) n vIrfuri(
numrul cromatic este egal cu )0
#$. S se demonstre6e c un graf este #icromatic( dac i numai
dac nu con%ine cicluri de lungime im!ar0
##. S se demonstre6e c !entru graful "etersen este adevrat
egalitatea
=
0
#'. Un numr finit de dre!te divi6ea6 !lanul 8ntr$un numr finit
de domenii coneJe0 S se demonstre6e c sunt suficiente dou
culori !entru a colora aceste domenii astfel( 8ncIt oricare dou
domenii adiacente s fie colorate 8n culori distincte0 7omeniile
ce au un singur !unct comun 2!unctul de intersec%ie a dre!telor4
nu se consider adiacente0
#3. Fie
k
5 5 5 ( ( (
) .

#locuri ale grafului 50 S se demonstre6e
c
4 2 maJ 4 2
i
i
5 5
0
#5. S se construiasc graful
(
> > ( .
1 $ 5
ca !rodus carte6ian al
grafurilor > ( .
$
i
>
1
( i s se gseasc o colorare o!timal a
vIrfurilor acestui graf0
#(. S se verifice urmtoarea afirma%ie5 !entru orice graf 5 cu n
vIrfuri i m muc'ii( este adevrat inegalitatea
.*3
4 2 . 4 2 5 a 5 +
(
unde
n m 5 a 9 ) 4 2
este gradul mediu al vIrfurilor din 50
#7. S se dea un eJem!lu de dou grafuri care au aceeai
succesiune a gradelor vIrfurilor( iar numerele cromatice ale
acestora sunt diferite0
#9. S se !ro!un un algoritm de colorare a muc'iilor garfului
n
$

cu
4 2
n
$

culori0
#%. La un turneu de a' !artici! n a'iti0 Atiind c fiecare a'ist
tre#uie s Noace cIte o !artid cu fiecare din ceilal%i nA1
!artici!an%i la turneu i nu !oate Nuca mai mult de o !artid !e
6i( s se afle numrul minim de 6ile 8n care se !oate termina
turneul0
':. S se dea un eJem!lu de graf( colorarea succesiv a vIrfurilor
cruia nu este minimal0
'$. Fie 5 un graf neorientat cu mul%imea de vIrfuri 3 de cardinal n
i mul%imea muc'iilor 2. @rice $colorare a acestui graf este
o func%ie
{ } , , , : ) . 3 f
cu !ro!rietatea c dac
2 7 x 4 2 ,
( atunci
2e4 4 2 f x f
0
S se demonstre6e c numrul $colorrilor grafului 5 se
eJ!rim su# forma unui !olinom de gradul n( numit !olinomul
cromatic al grafului 5 i notat
4 2
5
1
8n modul urmtor5
4 2
4 . 2 4 2
: c
2 :
:
5
1


| |
( unde
4 2: c
este numrul
com!onentelor coneJe ale grafului !ar%ial
( ) : 3 5 :
\

al
grafului 50
'#. S notm !rin 5Ae graful o#%inut din graful neorientat 5 !rin
su!rimarea muc'iei sale
4 ( 2 7 x e
( iar !rin
e 5 b
graful
o#%inut !rin su#stituirea vIrfurilor x4 7 cu un vIrf nou .4
adiacent cu toate vIrfurile grafului 5 care la rIndul su erau
adiacente fie cu x( fie cu 70 S se demonstre6e c5
4 2 4 2 4 2
b

e 5 e 5 5
1 1 1
0
.*/
''. 7ac notm !rin
n
$
graful com!let cu n vIrfuri( !rin
n

; un
ar#ore cu n vIrfuri i !rin
n
,
; ciclul elementar cu n vIrfuri(
atunci s se demonstre6e c au loc rela%iile5
.0
4 . 2 4 . 2 4 2 + n 1
n
$

:
)0
.
4 . 2 4 2


n

n
1
:
>0
4 . 2 4 . 2 4 . 2 4 2 +
n n
,
n
1
0
'3. S se demonstre6e c dac 5 este un graf cu n vIrfuri( atunci
!olinomul su cromatic are forma5
x a x a x a x x 1
n n
n
n
n
n
5 .
. )
)
.
.
4 . 2 4 2

+ +
(
unde
*
i
a
!entru orice
. ) . n i , , ,
0
'5. Amintim c o k$colorare a vIrfurilor unui graf 5 este o !arti%ie
a mul%imii vIrfurilor cu k clase( astfel 8ncIt fiecare clas a
!arti%iei s con%in numai vIrfuri neadiacente dou cIte dou0
S se demonstre6e c numrul maJim de [$colorri ale
vIrfurilor grafului 5 cu n vIrfuri( avInd numrul cromatic
k 5 4 2
( este egal cu
k n
k

( iar graful care admite acest
numr maJim de colorri este format dintr$un su#graf com!let
cu k vIrfuri i din nAk vIrfuri i6olate0
'(> Un graf !lanar
( ) 2 3 5 :
se numete eJterior !lanar( dac
!oate fi desenat 8n !lan astfel( 8ncIt toate vIrfurile sale s
a!ar%in frontierei unei fe%e0 S se demonstre6e c !entru orice
graf !lanar eJterior

4 ( 2 2 3 5
(
3 3
( cu un maJim de
muc'ii( numrul cromatic este egal cu trei0
..*
I&. DRUMURI MINIME
Fie 4 : 2 2 3 5 un graf orientat0 Fiecrui arc
4 ( 2 7 x
al
grafului
5
8i !unem 8n cores!onden% un numr real ar#itrar
4 ( 2 7 x a
0 7ac 8n
5
arcul
4 ( 2 7 x
li!sete( atunci considerm
4 ( 2 7 x a
0 Numrul
4 ( 2 7 x a
se numete pondere a arcului0
Suma !onderilor tuturor arcelor ce formea6 un drum se numete
pondere a acestui drum0
"entru oricare dou vIrfuri s i t ale grafului
5
( !ot eJista
mai multe drumuri cu eJtremit%i 8n aceste vIrfuri0 7rumul de
!ondere minim ce unete vIrfurile s i t se numete drum minim.
1roblema drumului minim const 8n determinarea 8n graful
orientat
5
al drumului de cea mai mic !ondere cu eJtremit%ile 8n
dou vIrfuri fiJate
s
i t astfel( 8ncIt s este eJtremitate ini%ial( iar t
; eJtremitate final0 ?raful nu tre#uie s con%in circuite de lungime
negativ0 7ac 8n graf eJist circuit de !ondere negativ( atunci
!ro#lema drumului minim nu are solu%ii( deoarece 8n acest ca6(
!arcurgInd circuitul res!ectiv de un numr nelimitat de ori( o#%inem
drumuri de !ondere oricIt de mic0 inInd cont de aceast situa%ie(
vom considera c 8n graful orientat nu sunt circuite de !ondere
negativ0
S anali6m un eJem!lu cu as!ect !ractic care se reduce la
solu%ionarea !ro#lemei drumului minim0
Curierul unei firme tre#uie s aNung din <oston 8n Los Angeles
folosind doar drumurile magistrale ce unesc diferite state0 Cum !oate
fi ales traseul o!timalS
"entru solu%ionarea acestei !ro#leme( construim un graf(
vIrfurile cruia cores!und !unctelor de intersec%ie a drumurilor
magistrale( iar fiecare arc re!re6int !artea drumului magistral care
unete !unctele cores!un6toare vIrfurilor0 "onderea arcului este
definit de lungimea !r%ii res!ective a drumului0 Astfel !ro#lema
determinrii traseului o!timal de la <oston la Los Angeles se reduce
la determinarea 8n graful construit a drumului minim dintre vIrfurile
ce cores!und oraelor <oston i Los Angeles0
...
Bom anali6a un algoritm ce determin drumul minim dintre
dou vIrfuri fiJate s i t ale grafului orientat
5
cu !onderi
nenegative ale arcelor0 Algoritmul res!ectiv a fost !ro!us 8n ./-/ de
ctre &0f0 7iN[stra i este considerat cel mai efectiv !entru
solu%ionarea !ro#lemei formulate0
Kn acest algoritm( fiecrui vIrf x al grafului 5 i se atri#uie
dou etic'ete0 "rima etic'et
4 2x d
!oate fi sau !ermanent( sau
tem!orar0 7ac
4 2x d
este !ermanent( atunci ea re!re6int
!onderea drumului minim ce unete vIrfurile s i x0 Kn ca6 contrar(
4 2x d
este lungimea drumului minim cu eJtremit%ile s i x care
trece numai !rin vIrfurile cu etic'ete !ermanente0 A doua etic'et
4 2x
este asociat oricrui vIrf x al grafului 5 cu eJce!%ia vIrfului
s0 La fiecare itera%ie etic'eta
4 2x
indic vIrful !recedent vIrfului x
8n drumul minim ce unete eJtremitatea ini%ial s cu cea final x( i
care trece !rin vIrfurile cu etic'ete !ermanente0 CInd etic'eta
4 2t d
devine !ermanent( atunci drumul minim cu eJtremit%ile s i t se
resta#ilete uor folosind etic'etele
4 2x
0
Ini%ial considerm c vIrful s are etic'eta !ermanent
* 4 2 s d

iar toate celelalte vIrfuri au etic'ete tem!orare egale cu 0
Itera%ia general a algoritmului const 8n urmtoarele5
Fie 7 vIrful( etic'eta
4 2 7 d
a cruia la itera%ia !recedent a
devenit !ermanent0 &Jaminm toate vIrfurile
4 2 7 x
+

cu
etic'etele tem!orare0 7ac
4 ( 2 4 2 4 2 x 7 a 7 d x d + >
( atunci modificm
etic'etele
4 ( 2 4 2 4 2 x 7 a 7 d x d +
i considerm
7 x 4 2
0 Kn ca6
contrar( etic'etele i d ale vIrfului x la aceast itera%ie nu se
sc'im#0 Algoritmul 8i termin misiunea cInd etic'eta dBt? devine
!ermanent0 "onderea drumului minim
X
1
cu eJtremit%ile s i t(
coincide cu valoarea dBt?0 Acest drum este determinat de etic'etele
8n modul urmtor5
4 4( 2 4( 2 4( 2 ( ( 2
) > X
t t t t s 1
(
unde
000 444( 2 2 2 4 2 44( 2 2 4 2
> )
t t t t

Bom !re6enta o descriere formal a algoritmului 7iN[stra0
..)
3.$. A*g+rit-u* DiD@.tra
8a.u* $. Considerm etic'eta !ermanent
* 4 2 s d
i
etic'etele tem!orare
4 2x d
!entru celelalte vIrfuri ale grafului0
Notm
s 7
0
8a.u* #. Anali6m fiecare vIrf
4 2 7 x
+

cu etic'et
tem!orar0
7ac
4 ( 2 4 2 4 2 x 7 a 7 d x d + >
( atunci considerm
4 ( 2 4 2 4 2 x 7 a 7 d x d +
i
7 x 4 2
0
Kn ca6 contrar( etic'etele dBx? i
4 2x
nu se modific0
8a.u* '. Fie I mul%imea vIrfurilor cu etic'ete d tem!orare0
?sim vIrful
X
x !entru care
4 2 min 4 2
X
x d x d
I x

0 &tic'eta
4 2
X
x d
a
vIrfului
X
x se declar !ermanent0
8a.u* 3. Notm
0
X
x 7
7ac 7Ot( atunci trecem la !asul -0 Kn
acest ca6(
4 2t d
re!re6int !onderea drumului minim0
Kn ca6 contrar( trecem la !asul )0
8a.u* 5.
4 4( 2 4( 2 4( 2 ( ( 2
) > X
t t t t s 1
este drumul minim
de la s la t 2unde
44 2 2 4 2
)
t t
( etc040 STO80
E5e-1*u. A!licInd algoritmul 7iN[stra( s se determine 8n
graful din fig0 )) drumul minim dintre vIrfurile s i t0
..>
"ig.##
8a.u* $. Atri#uim
* 2s4 d
i
4 2x d
!entru orice alt vIrf
x al grafului0
8a.u* #. 27Os40
{ } { } = = * 4 2 4 2 4( 2 min 4 2 + + , ,a s a s d a d a d
(
s a 4 2
(
{ } { } 1 1 * 4 2 4 2 4( 2 min 4 2 + + , ,b s a s d b d b d
(
s b 4 2
(
{ } { } > > * 4 2 4 2 4( 2 min 4 2 + + , ,c s a s d c d c d
(
s c 4 2
(
{ } { } + + * 4 2 4 2 4( 2 min 4 2 , ,d s a s d d d d d
(
s d 4 2
(
{ } { } + + * 4 2 4 2 4( 2 min 4 2 , ,t s a s d t d t d
(
s t 4 2
0
8a.u* '. 7eoarece
{ } > 4 2 4 2 4( 2 4( 2 4( 2 4( 2 min 4 2 c d t d d d c d b d a d x d
*
(
etic'eta d2c4 a vIrfului c devine !ermanent0
8a.u* 3. Atri#uim
c 7
0 7eoarece 7 t4 trecem la !asul )0
8a.u* #. 2
c 7
4 0
{ } { } = > = 4 2 4 2 4( 2 min 4 2 + + , ,a c a c d a d a d
(
s a 4 2
(
{ } { } 1 > 1 4 2 4 2 4( 2 min 4 2 + + , ,b c a c d b d b d
(
s b 4 2
(
{ } { } + > > 4 2 4 2 4( 2 min 4 2 + + , ,d c a c d d d d d
(
c d 4 2
(
{ } { } + + > 4 2 4 2 4( 2 min 4 2 , ,t c a c d t d t d
(
s t 4 2
0
..=
s
a b
t
d c
4
3
2
2
2
3
3
7
8a.u* '. &tic'eta d2a4 a vIrfului a devine !ermanent( deoarece
{ } = 4 2 4 2 4( 2 4( 2 4( 2 min 4 2 a d t d d d b d a d x d
*
0
8a.u* 3. Atri#uim
a 7
0 7eoarece 7 t4 trecem la !asul )0
8a.u* #. 2
a 7
4 0
{ } { } 1 > = 1 4 2 4 2 4( 2 min 4 2 + + , ,b a a a d b d b d
(
s b 4 2
(
{ } { } + > > + 4 2a 4 2 4( 2 min 4 2 + + , ,d a a d d d d d
(
c d 4 2
(
{ } { } + + = 4 2 4 2 4( 2 min 4 2 , ,t a a a d t d t d
(
s t 4 2
0
8a.u* '. 7eoarece
{ } + 4 2 4 2 4( 2 4( 2 min d d t d d d b d
(
etic'eta d2d4 a vIrfului d devine !ermanent0
8a.u* 3. Atri#uim
0 d 7
7eoarece 7 t4 trecem la !asul )0
8a.u* #. 2
d 7
4 0
{ } { } 1 + 1 4 2 4 2 4( 2 min 4 2 + + , ,b d a d d b d b d
(
s b 4 2
(
{ } { } 3 ) + 4 2 4 2 4( 2 min 4 2 + + , ,t d a d d t d t d
(
d t 4 2
0
8a.u* '. &tic'eta d2b4 a vIrfului b devine !ermanent( deoarece
{ } 1 4 2 4 2 4( 2 min b d t d b d
0
8a.u* #. 2
b 7
4 0
{ } { } 3 ) 1 3 4 2 4 2 4( 2 min 4 2 + + , ,t b a b d t d t d
(
d t 4 2
0
8a.u* 3.
t 7
i drumul minim cutat este
4 2 t d c s , , ,
0
Uor se o#serv c acesta nu este unicul drum minim 8n graful
eJaminat0 "onderea drumului
4 2 t d a s , , ,
este 3 i deci acesta( de
asemenea( este un drum minim0
N+ta $. Algoritmul eJ!us !oate fi a!licat i 8n ca6ul grafurilor
neorientate( dac fiecare muc'ie Bu4v? a grafului neorientat cu
..-
lungimea U se 8nlocuiete cu !erec'ea de arce Bu4 v? i Bv4u? de
aceeai lungime U0
N+ta #. ModificInd !asul = astfel( 8ncIt algoritmul s$i
termine misiunea du! ce toate vIrfurile grafului vor c!ta etic'ete
!ermanente( vom determina toate drumurile minime dintre s i
celelalte vIrfuri0 Kn !lus( dac du! transformarea lui
4 2
X
x d
8n
etic'et !ermanent arcul
4 4( 2 2
X X
x x
se introduce 8ntr$o list
X
A
(
atunci du! finisarea algoritmului se o#%ine un ar#ore orientat
4 : 2
X
A 3 9
cu rdcina 8n vIrful s0 Acest ar#ore se numete
arbore al drumurilor minime ale grafului
5
cu eJtremitatea ini%ial
s0
"recum s$a men%ionat( algoritmul 7iN[stra a fost !ro!us !entru
determinarea drumurilor minime 8n grafuri cu !onderi nenegative ale
arcelor0 Kn ca6ul !onderilor negative ale arcelor( acest algoritm nu
asigur solu%ionarea !ro#lemei formulate0
"ig.#'
S ilustrm aceasta !rintr$un eJem!lu0 Fie graful
5

re!re6entat 8n fig0 )>0 Kn acest graf( drumul minim din s 8n t este
4 ( ( 2
X
t a s 1
0 Lungimea acestui drum este egal cu )$)R*0 A!licInd
algoritmul lui 7iN[stra( vom o#%ine 8ns un alt re6ultat( i anume
drumul
4 ( 2
X
t s 1
de lungimea .0
3.#. A*g+rit-u* "+r0
..+
a
Kn ca6ul cInd unele !onderi ale arcelor grafului sunt negative(
se a!lic o modificare a algoritmului 7iN[stra( !ro!us de L0R0 Ford(
&0F0 Moor i R0 <ellman0 S cutm drumurile minime ce !ornesc
din s 8n toate celelalte vIrfuri ale grafului0 Aceasta metod este o
metod iterativ i( de asemenea( se #a6ea6 !e etic'etarea vIrfurilor
grafului0 La itera%ia k etic'etele asociate vIrfurilor indic !onderile
drumurilor minime 2de la s la celelalte vIrfuri4 care con%in cel mult
. + k arce0 S!re deose#ire de algoritmul 7iN[stra( 8n aceast metod
nici una dintre etic'etele vIrfurilor nu este !ermanent0
Bom !re6enta o eJ!unere formal a acestui algoritm0
Fie
4 2
i
k
x d
i
4 2
i
k
x
etic'etele vIrfului
i
x
la sfIritul itera%iei
. + k (
n 3 b b
0
8a.u* $. Considerm5
( * 4 2 ( . 4( 2
.

+
s d k s C
4( ( 2 4 2
.
i i
x s a x d
s x
i
4 2
.

( !entru orice
4 2s x
i
+

i
* 4 2 ( 4 2
. .

i i
x x d
( !entru toate celelalte vIrfuri0
8a.u* #. "entru fiecare vIrf
4 2C x
i
+

2
s x
i

4 modificm
etic'eta
. + k
d 5
4LZ 2 4 2 M min 4( 2 minY 4 2
(
.
i ) )
k
x
i
k
i
k
x x a x d x d x d
i )
+

+
(
unde
C x
i i
4 2


0
7ac
4 2 4 2
.
i
k
i
k
x d x d
+
( atunci
) i
k
x x
+
4 2
.

0 2La acest
moment mul%imea C con%ine toate vIrfurile p
x
!entru care drumurile
minime din s 8n p
x
con%in cel mult k arce04
..1
Mul%imea
i

con%ine vIrfurile p
x
!entru care drumurile
minime curente din s 8n p
x
con%in cel mult k arce i eJist arce de
ti!ul 2 p
x
(
i
x
40
Re-arc6. 7ac
4 2C x
i
+

( atunci nu eJist drum minim de
la s la
i
x
din kV1 arce i deci etic'eta vIrfului
i
x
nu se modific(
adic
4 2 4 2
.
i
k
i
k
x d x d
+
0
8a.u* '.
a> 7ac . n k i
4 2 4 2
.
i
k
i
k
x d x d
+
!entru toate vIrfurile
i
x
( atunci re6ultatul o#%inut este o!timal i etic'etele indic
!onderile drumurilor minime cutate0 STO80
4> 7ac cel !u%in !entru un vIrf
i
x
au loc inegalit%ile
. < n k i
4 2 4 2
.
i
k
i
k
x d x d
+
( atunci trecem la !asul =0
c> 7ac eJist un vIrf
i
x
!entru care . n k i
4 2 4 2
.
i
k
i
k
x d x d
+
( atunci graful con%ine circuit cu !ondere negativ
i( !rin urmare( !ro#lema nu are solu%ii0 STO80
8a.u* 3. Redefinim mul%imea C5
4L 2 4 2 b M
.
i
k
i
k
i
x d x d x C
+
0
2Mul%imea C con%ine toate vIrfurile p
x
!entru care drumurile
minime din s 8n p
x
con%in kV. arce04
8a.u* 5. Considerm . + k k i trecem la !asul )0
7rumurile minime !ot fi resta#ilite cu aNutorul etic'etelor 0
Astfel( drumul minim de la s la vIrful
i
x
este
i i i i
x x x x s 4( 2 4( 2 4( 2 ( (
. ) >

0
..3
x
$
x
#
x
'
x
9
x
3
x
7
x
5
x
(
x
%
#
F'
F5
$5 9 F$:
#3
$(
##
F$' #:
$#
(
3
%
$$
$9
F7
"ig.#3
E5e-1*u. Bom anali6a graful din fig0 )=0 Kn acest graf(
muc'iile definesc dou arce de aceeai !ondere orientate 8n direc%ii
o!use0 A!licInd algoritmul Ford( vom afla toate drumurile minime
din
.
x
8n celelalte vIrfuri ale grafului0
8a.u* $. Atri#uim
{ } $>( 4 2 *( 4 2 ( (
)
. .
- ) .
x d s d x x C x s ,
, ) 4 2
-
.
x d

s x s x 4 2 4 2
-
.
)
.
,
( iar !entru celelalte vIrfuri ale
grafului considerm
4 2
.
i
x d
i
* 4 2
.

i
x
0
Atri#uim . k 0
1rima iteraie
8a.u* #.
{ }
+ - = > )
( ( ( ( J 4 2 x x x x C
+
0 "entru vIrful
)
x
avem 5

{ } { } { }
- - ) - . )
x x x x x , ,

i
{ } { } [ ] : > .) ) ( > min 4 J ( 2 4 2 >( $ min 4 2
-
) - -
.
)
)
+
1
1
1
]
1

4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 2 1
x
)
x
x a x d x d
!entru
>
x
5
{ } { } { }
- - ) 1 = ) >
x x x x x x x , , , ,
i
../
3 - > min 4 2
)
>
)

1
1
]
1

'


x x
)
x d ,
(
) >
)
4 2 x x
:
!entru
=
x
5
{ } { } { }
- ) - ) / 1 - > ) =
x x x x x x x x x , , , , , ,
(

- 1 ) .- > min min 4 2


-
)
=
)

1
1
]
1

'

x x
x x
)
)
x d , ,

(
- =
)
4 2 x x
:
!entru
-
x
5
{ } { } { }
) - ) + ) . -
x x x x x x , , ,
i
) .) > ) min 4 2
)
-
)

1
1
]
1

'


x x
)
x d ,
:
!entru
+
x
5
{ } { } { }
- - ) / 1 - = +
x x x x x x x , , , ,
(
)) )* ) min 4 2
-
+
)

1
1
]
1


x x
)
x d ,
(
- +
)
4 2 x x
0
&tic'etele
4 2
)
i
x d
!entru
/ > ) .
x x x x x , , , ,
sunt
[ ] ( ( ))( )( -( $ 3 >( $ * , ,
0
8a.u* 'G4>. Trecem la !asul =0
8a.u* 3.
{ }
+ = >
x x x C , ,
0
8a.u* 5. Considerm [R) i trecem la !asul )0
A doua iteraie
8a.u* #.
{ }
/ 3 1 + - = > .
( ( ( ( ( ( ( J 4 2 x x x x x x x C
+
0
Atunci o#%inem
!entru
>
x
5
{ } { } { }
= - = > 3 1 = ) >
x x x x x x x x , , , , ,
i
3 34 2$- 3( $ min 4 2
=
>
>

1
1
1
]
1


x
)
x
x d
:
!entru
=
x
5
{ } { } { }
> + = > / 1 - > ) =
x x x x x x x x x , , , , , ,
(
.)*
- 3 3 - min 4 2
>
=
>

1
1
]
1


x x
)
x d ,
:
!entru
-
x
5
{ } { } { }
+ + = > + ) . -
x x x x x x x , , , ,
i
) )* )) ) min 4 2
+
-
>

1
1
]
1

'


x x
)
x d ,
:
!entru
+
x
5
{ } { } { }
= + = > / 1 - = +
x x x x x x x x , , , , ,
(
.> .3 - )) min 4 2
=
+
>

1
1
]
1


x x
)
x d ,
(
= +
>
4 2 x x
:
!entru
1
x
5
{ } { } { }
+ = + = > 3 + = 1
x x x x x x x x , , , , ,
(
. / )) = - min min 4 2
+ =
1
>

1
1
]
1

'

+ +


x x x x
) )
x d , ,
(
= 1
>
4 2 x x
:
!entru
3
x
5
{ } { } { }
> + = > 1 > 3
x x x x x x , , ,
(
.+ )= 3 min 4 2
>
3
>

1
1
]
1


x x
)
x d ,
(
> 3
>
4 2 x x
:
!entru
/
x
5
{ } { } { }
= + = > 3 = /
x x x x x x , , ,
(
+ .. - min 4 2
=
/
>

1
1
]
1


x x
)
x d ,
(
= /
>
4 2 x x
0
&tic'etele
4 2
>
i
x d
!entru
/ > ) .
x x x x x , , , ,
sunt
[ ] .+(+ .( $ .>( )( -( $ 3 >( $ * , ,
8a.u* 'G4>. Trecem la !asul =0
8a.u* 3.
{ }
/ 3 1 +
x x x x C , , ,
0
8a.u* 5. Considerm [R> i trecem la !asul )0
A treia iteraie 28n continuare !rocesul se descrie 8n mod sim!lificat4
.).
8a.u* #.
{ }
/ 3 1 + - = >
4 2 x x x x x x x C , , , , , ,
0
{ }
3 1 >
x x ,
(
.. 4 2
>
=
x d
i
1 >
=
4 2 x x
:
{ }
/ 1 =
x x ,
i - 4 2
=
=
x d :
{ }
+ -
x
i
) 4 2
-
=
x d
:
{ }
/ 1 +
x x ,
(
1 4 2
+
=
x d
i
/ +
=
4 2 x x
:
{ }
3 + 1
x x ,
i
. 4 2
1
=
x d
:
{ }
1 3
x
(
.- 4 2
3
=
x d
i
1 3
=
4 2 x x
:
{ }
3 /
x
i
+ 4 2
/
=
x d
0
Bectorul etic'etelor
4 2
=
i
x d
este
[ ] .-(+ .( $ 1( $ )( -( $ .. >( $ * , ,
0
8a.u* 3.
{ }
3 + >
x x x C , ,
0
A patra iteraie
8a.u* #.
{ }
/ 3 1 + - = >
4 2 x x x x x x x C , , , , , ,
0
{ }
3 >
x
(
.. 4 2
>
-
x d
:
{ }
> =
x
i - 4 2
=
-
x d :
{ }
+ -
x
i
) 4 2
-
-
x d
:
{ }
3 + 1
x x ,
i
. 4 2
1
-
x d
:
{ }
> 3
x
(
.> 4 2
3
-
x d
i
4 2
3
-
x
>
x
{ }
3 /
x
i
+ 4 2
/
-
x d
0
Bectorul etic'etelor
4 2
-
i
x d
este
[ ] .>(+ .( $ 1( $ )( -( $ .. >( $ * , ,
0
8a.u* 3.
{ }
3
x C
0
A cincea iteraie
8a.u* #.
{ }
/ 1 >
4 2 x x x C , ,
0
{ }
3 >
x
(
.. 4 2
>
+
x d
:
{ }
3 1
x
i
. 4 2
1
+
x d
:
{ }
/ /
x
i
+ 4 2
/
+
x d
0
.))
Bectorul etic'etelor
4 2
+
i
x d
coincide cu
4 2
-
i
x d
i determin
!onderile drumurilor minime cutate0 7rumurile minime res!ective
se resta#ililesc conform etic'etelor
)
i

vIrfurilor grafului0
3.'. A*g+rit-u* "*+I0
Bom eJamina 8n continuare !ro#lema de determinare a
drumurilor minime dintre toate !erec'ile de vIrfuri ale grafului( care
la rIndul su !oate fi !rivit dre!t o generali6are a !ro#lemei
eJaminate anterior0 Kn acest ca6( cea mai sim!l metod de
solu%ionare ar consta 8n a!licarea de n ori a algoritmului lui Ford(
alegInd de fiecare dat 8n calitate de vIrf s un alt vIrf al grafului0
7ar aceast metod devine inutil 8n ca6ul grafurilor de dimensiuni
mari0
Bom anali6a o metod de re6olvare a !ro#lemei formulate
!entru un graf ar#itrar 2!onderile arcelor grafului !ot fi atIt !o6itive(
cIt i negative4( !ro!us de R0f0 Floed i !erfec%ionat mai tIr6iu de
E070 Murc'land0 Metoda const 8n transformarea de n ori a matricei
ini%iale 9 a !onderilor arcelor grafului0 La itera%ia k elementul i)
d
al
matricei res!ective este egal cu !onderea drumului minim ce
!ornete din vIrful
i
x
s!re vIrful )
x
( cu condi%ia c vIrfurile
intermediare ale acestui drum a!ar%in mul%imii
{ }
k
x x x ( ( (
) .

0
"entru a resta#ili drumurile minime aflate( se definete matricea
Z Y
i)

cu dimensiunea
n n
0 &lementul i)

al matricei indic
!redecesorul vIrfului
)
x
8n drumul minim de la
i
x
la )
x
0
Construim matricea !onderilor grafului
5
considerInd5
a4
*
ii
d
!entru orice
n 4 4 i ( ) .
:
#4 i)
d
2i )4 egal cu lungimea arcului minim care unete vIrful
i
x
cu vIrful )
x
:
c4

i)
d
2i )4 dac 8n graf arcul
4 ( 2
) i
x x
li!sete0
.)>
Fie i i)
x
valorile ini%iale ale matricei !entru orice
i
x
i
)
x
0
8a.u* $. Considerm * k 0
8a.u* #. Trecem la itera%ia urmtoare . + k k 0
8a.u* '. "entru to%i
k ) i (
astfel( 8ncIt

ik
d
i

k)
d
se
definete
} {
k) ik i) i)
d d d d + 2 min
(
2X40
Matricea se modific astfel5

'

+
< +

40 d 2 dac (
( 4 2 dac (
[N ik i) i)
i) k) ik k)
i)
d d
d d d

8a.u* 3. a> 7ac !e diagonala !rinci!al a matricei 9 eJist cel


!u%in un element
* <
ii
d
( atunci graful
5
con%ine un circuit cu
!ondere negativ ce trece !rin vIrful
i
x
0 "rin urmare( !ro#lema nu
are solu%ii0 STO8.
4> 7ac
*
ii
d
!entru orice
n i (000( ) ( .
i n k ( atunci
matricea 9 con%ine !onderile tuturor drumurilor minime0 STO8.
c> 7ac
*
ii
d
( !entru orice
n i (000( ) ( .
i n k < ( atunci
trecem la !asul )0
7rumurile minime se o#%in direct din matricea final 0
Astfel( drumul minim de la
i
x
la )
x
este eJ!us !rin urmtoarea
succesiune de vIrfuri ale grafului5 ) i
x x x x x x ( ( ( ( ( (


; unde


i i)
x x (
(

i i i
x x ( (
0
.)=
3.3. A*g+rit-u* Dant7ig
Un alt algoritm ce determin drumurile minime dintre toate
!erec'ile de vIrfuri ale grafului a fost !ro!us de ?0<0 7ant6ig0 Acest
algoritm( 8n mare msur( seamn cu algoritmul Floed( deose#irea
fiind 8n ordinea eJecutrii o!era%iilor res!ective0 "rin
m
i)
d
se notea6
!onderea drumului minim care unete vIrful
i
x
cu vIrful )
x
i care
con%ine 8n calitate de vIrfuri intermediare !rimele m vIrfuri ale
grafului0 Matricea
m
9
const din valorile
m
i)
d
i !entru fiecare
n m , , , ) .
are dimensiunea
m m
0 "ro#lema const 8n
construirea matricei
n
9
( elementele i)
d
ale creia determin
lungimea drumului minim din vIrful
i
x
8n vIrful )
x
0 Bom men%iona
c matricea
.
9
se o#%ine din matricea
*
9
( matricea
)
9
; din
.
9
( 0 a0 m0 d0
7eose#irea esen%ial a algoritmului 7ant6ig de algoritmul
Floed const 8n fa!tul c la fiecare itera%ie matricea nou$construit
m
9
are dimensiunea
m m
( i nu
n n
0
8a.u* $. Numerotm vIrfurile grafului cu
n , . , ) .
0 7efinim
matricea
*
9
de dimensiunea
n n
considerInd
*
i)
d
egal cu
!onderea arcului minim ce duce din vIrful
i
x
8n vIrful )
x
(
) i n ) i ) . , , , , ,
0 Kn ca6 c arcul
4 2
) i
x x ,
li!sete( atri#uim

*
i)
d
( iar
*
*

ii
d
0
Construim matricea ( atri#uind
i i)
x
(
n ) i , , , , ) .
0
8a.u* #. Kn #a6a matricei
. m
9
( definim succesiv elementele
matricei
m
9
( !entru
n m , , , ) .
5
.)-
{ } . ) .
. *
. ) .
+


m ) d d d
m
i) mi
m i
m
m)
, , , , min
, , ,

(
2=0.4
{ } . ) .
* .
. ) .
+


m i d d d
)m
m
i)
m )
m
im
, , , , min
, , ,

(
2=0)4
{ }
. . .
+
m
i)
m
m)
m
im
m
i)
d d d d , min
(
. ) . m ) i , , , ,
( 2=0>4
*
m
ii
d
$ !entru orice i i m. 2=0=4
Modificm matricea 5

'

+
< +

40 2 dac (
( 4 2 dac (
.
.
m
m)
m
im
m
i) i)
m
i)
m
m)
m
im m)
i)
d d d
d d d

Ca i 8n ca6ul algoritmului Floed( drumurile minime se o#%in


din matricea final care cores!unde matricei
n
9
( iar elementele
matricei
n
9
indic !onderile acestor drumuri0
3.5. A*g+rit-u* 0e c6utare 0u4*6
Kn !aragrafele !recedente( am eJaminat algoritmii ce
determin un singur drum minim 8ntre dou vIrfuri ale grafului0 Kns
8n unele ca6uri( este necesar s se cunoasc nu doar !rimul drum
minim( ci i al doilea( al treilea etc0( 8n ordinea nedescresctoare a
!onderilor0 Kn continuare vom eJamina algoritmul de c/utare dubl/
2double < sUeep4 care determin !rimele k drumuri minime de la un
vIrf fiJat ctre toate celelalte vIrfuri ale grafului0
.)+
Considerm cortegiul din k numere
4 ( ( ( 2
) . k
d d d
care
re!re6int !onderile arcelor sau ale drumurilor0 "rin
k
M
notm
mul%imea cortegiilor
4 ( ( ( 2
) . k
d d d
( unde
k
d d d < < <
) .
0 7eci
com!onentele oricrui cortegiu din
k
M
sunt aranNate 8n ordine
cresctoare0 7efinim dou o!era%ii asu!ra elementelor mul%imii
k
M
0
Fie
4 2
) . k
a a a A , , ,
i
4 2
) . k
b b b B , , ,
dou cortegii
din
k
M
0 ;peraia generali.at/ de comparare a cortegiilor A i B se
notea6 !rin _ i se definete5
( )
k k k
b b b a a a B A , , , , , , , min
) . ) .
+
(
unde
( ) 3
k
min
este cortegiul ce const din !rimele k elemente
minime distincte ale mul%imii 30
;peraia generali.at/ de adunare a vectorilor A i B se
notea6 !rin i se definete5
{ }0 ( ( ) ( . ( 5 min k ) i b a B A
) i k
K +
7e eJem!lu( dac AR2.( >( =( 34 i BR2>( -( 1( .14( atunci
+ B A
4 - ( = ( > ( . 2 4 .1 ( 1 ( - ( > ( 3 ( = ( > ( . 2 min
=

( iar
34 1( +( 2=( 4 -( > >( > .1( . 1( . -( . >( 2. min
=
+ + + + + + K B A
0
Utili6Ind nota%iile folosite 8n algoritmii !receden%i( vom
defini !entru
k
M
cortegiile
4 2
* * * *
) . k
i) i) i) i)
d d d d , , ,
( elementele
crora determin !onderile a k arce
4 ( 2
) i
x x
minime0
7ac 8n graf eJist dou arce
4 ( 2
) i
x x
cu aceeai !ondere(
atunci valoarea cores!un6toare !onderii acestor arce determin doar
un singur element al cortegiului
*
i)
d
0 7ac din mul%imea tuturor
arcelor
4 ( 2
) i
x x
ale grafului nu !ot fi alese k arce cu !onderi
distincte( atunci elementele nedeterminate ale cortegiului
*
i)
d
se
consider egale cu 0 7e eJem!lu( dac vIrful
i
x
se unete cu
vIrful )
x
!rin trei arce cu !onderile /( .> i / res!ectiv( atunci
!entru k R = avem
4 ( ( .> ( / 2
*

i)
d
0 Men%ionm c !entru
cortegiul
*
ii
d
toate com!onentele( cu eJce!%ia !rimului 2
*
*
.

ii
d
4(
.)1
sunt egale cu 0 "entru i R ) considerm c eJist un arc 2#ucl4 cu
!onderea *0 "rin
*
9
notm matricea( fiecare element
4 2 ) i,
al
creia este cortegiul
*
i)
d
0
7efinim cortegiile
k m
i)
m
i)
m
i)
M d d d
k
4 ( ( 2
.

( com!onentele
crora determin !onderile a k drumuri minime ce duc din vIrful
i
x

8n vIrful )
x
i con%in 8n calitate de vIrfuri intermediare !rimele m
vIrfuri ale grafului0 Notm !rin
m
9
matricea( fiecare element
4 2 ) i,
al creia coincide cu
m
i)
d
0
S construim dou matrice ( i 20 Matricea ( se o#%ine din
matricea
*
9
( su#stituind !rin toate elementele
*
i)
d
( !entru care
) i
0 Su#stituind !rin toate elementele
*
i)
d
din
*
9
( !entru
care
) i
( o#%inem matricea 20 Notam !rin
k
i)
i)
i)
M d d d
k


4 ( ( 2
.


cortegiul ale crui com!onente re!re6int !onderile !rimelor k
drumuri minime din
i
x
8n )
x
0 Fie

9
matricea cu elementele

i)
d
0
7ac este necesar de determinat !onderile a k drumuri
minime ce duc dintr$un vIrf fiJat p 2pR.()(000(n4 8n celelalte vIrfuri
ale grafului( este suficient de aflat doar elementele liniei p a matricei

9
0
Men%ionm c algoritmul de cutare du#l !oate fi a!licat
numai 8n grafuri ce nu con%in circuite cu !onderi negative0
3.5.$. E51unerea a*g+rit-u*ui 0e c6utare 0u4*6
8a.u* $. Construim matricea
*
9
conform regulilor
men%ionate mai sus0 Kn #a6a matricei
*
9
construim matricele ( i 20
8a.u* #. "entru
( ) ( . ( * r
se efectuea6 succesiv5
a) ,/utarea invers/R
( )
r
p)
r
pn n)
r
p )
r
p )
r
p)
d d l d l d l d
) . ) . )
) )
. )
. .
. )
+ + + +
+ + + +

(
.)3
!entru
. ) . , , , , n n )
0
b) ,/utarea direct/R
( )
. ) ) ) ) )
) )
) )
. .
) ) + + + + +
+ + + +
r
p)
r
pn n)
r
p )
r
p )
r
p)
d d u d u d u d
(
!entru
n ) , , , ) .
0
7ac re6ultatele o#%inute du! dou itera%ii succesive vor
coincide( atunci algoritmul 8i termin misiunea( iar cortegiile
determinate re!re6int !onderile drumurilor minime res!ective0
"rocedeul eJ!us determin !onderile drumurilor minime 8n
graful ini%ial0 7ar cum ar !utea fi gsite aceste drumuriS
7u! a!licarea algoritmului de cutare du#l( drumul care
cores!unde cortegiului
k
i)
i)
i)
M d d d
k


4 ( ( 2
.

!oate fi resta#ilit 8n
felul urmtor5
Fie c este necesar s determinm al m$lea drum minim din
vIrful
i
x
8n )
x
2 drumul minim cu numrul de ordine m care duce
din
i
x
8n )
x
4 ce cores!unde elementului

m
i)
d
0 Acest drum con%ine
drumul minim cu numrul de ordine l 2 m l 4( care duce din vIrful
i
x
8ntr$un vIrf
s
x
( i arcul
4 ( 2
) s
x x
0 Suma !onderilor drumului i
arcului indicat tre#uie s fie egal cu

m
i)
d
0 BIrful
s
x
este
!enultimul vIrf 8n drumul minim cu numrul de ordine m4 ce duce
din
i
x
8n )
x
0 Acest vIrf se determin eJaminInd elementele
matricei
*
9
i com!onentele cortegiului

i)
d
0 7u! ce a fost
determinat vIrful
s
x
( !rocedeul eJ!us se a!lic la cutarea
!enultimului vIrf 8n drumul minim cu numrul de ordine l care duce
din
i
x
8n
s
x
0 Re!etInd acest !rocedeu( se !arcurge 8n 8ntregime 8n
direc%ia invers drumul minim cu numrul de ordine m care duce din
i
x
8n )
x
0
Kn ca6ul cInd !enultimul vIrf 8n drumul minim cu numrul de
ordine m care duce din
i
x
8n
s
x
nu este unic( se recomand s se
fiJe6e toate !enultimele vIrfuri !e acest drum i s se !arcurg 8n
.)/
direc%ie invers toate drumurile cu aceeai !ondere( ce cores!und
elementului

m
is
d
0 Amintim c 8ntre dou vIrfuri ale grafului !ot
eJista mai multe drumuri minime0
Bom eJamina acum o !ro#lem mai general5 S se
determine !rimele k drumuri minime dintre orice dou vIrfuri ale
grafului0 "entru a solu%iona aceast !ro#lem( se a!lic algoritmii
generali.ai Llo7d i 9ant.ig0
Ca i 8n ca6ul algoritmului de cutare du#l( o#%inem
cortegiul
k m
i)
m
i)
m
i)
M d d d
k
4 ( ( 2
.

( com!onentele cruia determin
!onderile !rimelor k drumuri minime ce duc din vIrful
i
x
8n vIrful
)
x
( i care con%in 8n calitate de vIrfuri intermediare !rimele m
vIrfuri ale grafului0 "rin
k
ii
M d
notm cortegiul ale crui
com!onente indic !onderile !rimelor k drumuri minime ce !ornesc
i se termin 8n vIrful
i
x
0 "rima com!onent a acestui cortegiu este
egal cu * i cores!unde !onderii drumului ce nu con%ine nici un arc0
"entru
ii
d
se definete cortegiul
k ,
ii
M d
( elementele cruia indic
!onderile a k circuite minime ce con%in vIrful
i
x
. Cu alte cuvinte(
k
ii ii ii
,
ii
M d d d d K
0
Algoritmul generali6at Floed coincide 8n esen% cu algoritmul
Floed eJ!us 8n !aragraful =0>( dar rela%ia 2X4 este su#stituit cu
urmtorul sistem de ecua%ii5
( )

'

0 ( orice !entru (
: orice !entru (
: orice !entru (
:
.
.
.
.
m ) i d d d d
m i d d d
m i d d d
d d
m
i)
m
m)
m
im
m
i)
m
mi
m
mm
m
mi
m
mm
m
im
m
im
,
m
mm
m
mm
.>*
Algoritmul generali6at 7ant6ig la fel se o#%ine din algoritmul
ini%ial eJ!us 8n !aragraful =0=( dar rela%iile 2=0.4( 2=0)4( 2=0>4 i 2=0=4
se su#stituie cu urmtoarele5
:
.
.
* . *
.
.
*
,
m
)
)m
m
i) mi
m
i
mm
m
mm
d d d d d

,
_

. ( ( ) ( . (
.
.
. *

m i d d d d
m
)
m
)i m)
m
mm
m
mi
K
:


.
.
* .
. ( ( ) ( . (
m
)
m
mm )m
m
i)
m
im
m i d d d d K
:
. ( ( ) ( . ( (
.
+

m ) i d d d d
m
i)
m
m)
m
im
m
i)
K
0
3.(. 8r+4*e-e
.>.
$. A!licInd algoritmul 7iN[stra( s se gseasc drumurile minime ce
duc din vIrful . 8n fiecare din celelalte vIrfuri ale grafului
re!re6entat 8n fig0)-0
#. Ce se 8ntIm!l cu solu%ia !ro#lemei !recedente( dac din graf se
elimin arcul 2=()4S &ste oare necesar s se efectue6e din nou
toate calculele conform algoritmului 7iN[straS
'. A!licInd algoritmul Floed( s se afle drumurile minime dintre
toate !erec'ile de vIrfuri ale grafului re!re6entat 8n fig0 )-0
3. Cu aNutorul algoritmului 7ant6ig s se determine drumurile
minime dintre toate !erec'ile de vIrfuri ale grafului re!re6entat
8n fig0 )-0 S se com!are aceste re6ultate cu re6ultatele o#%inute
la solu%ionarea !ro#lemei !recedente0
5. Utili6Ind algoritmul generali6at Floed s se construiasc !rimele
trei drumuri minime !entru fiecare !erec'e de vIrfuri distincte
ale grafului re!re6entat 8n fig0 )-0 S se re6olve aceeai !ro#lem
a!licInd algoritmul generali6at 7ant6ig0
(. Kn graful din fig0 )- s se construiasc !rimele trei drumuri de
lungime minim ce duc din vIrful . 8n toate celelalte vIrfuri0
.>)
"ig.#5
7. S se verifice dac alegerea modului de numerotare a vIrfurilor
grafului afectea6 eficien%a algoritmului Floed( a algoritmului
7ant6ig i a algoritmului de cutare du#l0 7ac da( atunci s se
eJ!lice de ce0
9. Managerul unui 'otel tre#uie s re6erve6e camere !entru tinerii
8nsur%ei0 &l dis!une de o list a re6ervrilor( fcute 8n virtutea
informa%iei des!re data sosirii i data !lecrii clien%ilor0 Fiecare
re6ervare aduce 'otelului un anumit venit care de!inde de fa!tul
cine sunt clien%ii 2studen%i( func%ionari( !ersonalul unei com!anii(
etc040 Kn ce mod !oate fi utili6at algoritmul 7iN[stra !entru a crea
un orar de re6ervare a camerelor care ar garanta un venit maJimS
2Indicaii. S se re!re6inte fiecare comand de re6ervare a
camerelor !rintr$un arc ce unete vIrfurile cores!un6toare
datelor de sosire i de !lecare0 Kn graful construit nu eJist
circuite i( !rin urmare( algoritmul 7iN[stra !oate fi a!licat04
%. La o u6in de !relucrare a !etrolului sunt = ti!uri de re6ervoare
care se folosesc !entru !strarea com#usti#ilului5 A( <( C i 70
Tim!ul 8n care !etrolul !oate fi !om!at 8n mod direct dintr$un
re6ervor 8n altul este indicat 8n ta#elul I0 S se afle dou dintre
cele mai #une modalit%i de !om!are a !etrolului din re6ervorul
A 8n re6ervorul 70
Ta4e*u* I
Re6ervorul A < C 7
A *(** *(.> *(.= *(.-
< *(*3 *(** *(.> *(*3
C *(.1 *(.) *(** *(.3
7 *(*. *(*+ *(.> *(**
$:. @ firm farmaceutic !lanific 8n decurs de .) luni s ela#ore6e
un !re!arat nou care ar !utea concura cu !re!aratul !rodus de o
firm concurent i recent lansat !e !ia%0 &la#orarea !re!aratului
nou const din = eta!e care !ot decurge 8ntr$un tem!ou lent(
.>>
normal sau ra!id0 Tem!ourilor diferite le cores!und c'eltuieli
distincte de tim! i financiare re!re6entate 8n ta#elul < 2!rima
cifr din fiecare celul indic durata 8n luni( a doua cifr
c'eltuielile 8n mii dolari40 S se afle cea mai #un metod de
ela#orare a !re!aratului 8n decurs de .) luni( cu condi%ia c
c'eltuielile firmei nu vor de!i )- mii dolari0 S se determine i
a doua dintre cele mai #une metode de reali6are a sco!ului
!ro!us0
Ta4e*u* II
&ta!a
Tem!oul
&
v
a
l
u

r
i

t
e
o
r
e
t
i
c
e
&
J
!
e
r
i
m
e
n
t
e

8
n

l
a
#
o
r
a
t
o
a
r
e
A
!
r
o
#
a
r
e
a

d
e

c

t
r
e

g
u
v
e
r
n
R
e
a
l
i
6
a
r
e
a

!
e

!
i
a
%

Lent - : - > : + + : . - : 3
Normal = : 1 ) : 3 = : . = : .*
Ra!id ) : .* . : .) ) : > > : .-
$$. S se afle toate drumurile minime de la vIrful . la toate celelalte
vIrfuri ale grafului re!re6entat 8n fig )+0
.>=
3
#
$3
$%
(
$
5
$:
5
(
9
%
$:
7
9
7
'
9
%
9
$3
#
'
$:
$$
'
'
5
(
"ig. #(
$#. A!licInd algoritmul lui Ford( s se afle drumurile minime de la
vIrful . la toate celelalte vIrfuri ale grafului din fig )10
3
$%
6
3

F7
!
(
$#
$:
$:
9
$'
9
(
7
7
"
2
4
"ig. #7
$'. S se re6olve !ro#lema !recedent !entru ca6ul cInd lungimea
arcului 2=(-4 este egal cu $30 S se afle toate circuitele de
lungime negativ ale acestui graf0
$3. S se demonstre6e c 8ntr$un graf orientat i coneJ orice dou
drumuri de lungime maJim au cel !u%in un vIrf comun0
.>-
$5. "entru graful din fig0 )+ s se gseasc !rimele !atru drumuri
elementare minime de la vIrful . la vIrful .*0 Care este drumul
elementar minim ce unete vIrful . cu vIrful .* i este format
din - arce0
$ #
'
3
5
G$; #>
G$; #>
G
$
:
;

'
>
G
3
;

%
>
G
(
;

%
>
G9; (
>
G
;
>
$
3
3
G
;
>
9
9
G
;
>
$
5
9
G
;
>
'
#
G
;
>
$
5
%
G
;
>
#
:
%
"ig. #9
$(. ?raful din fig0 )3 re!re6int totalitatea tuturor traseelor !osi#ile
ale unei nave maritime0 Fiecrui arc 8i cores!unde etic'eta
2a4b4(unde a indic !rofitul o#%inut la alegerea acestui traseu( iar
b tim!ul necesar !entru deservirea lui0 S se afle cel mai
!rofita#il 28n termenii micrii ca!italului4 traseu al navei0
.>+
BIBLIO!RA"IE
.0 Cataranciuc Sergiu0 Teoria grafurilor 8n !ro#leme i a!lica%ii0 ;
C'iinu5 USM( )**.0 ; .*) !0
)0 Cataranciuc Sergiu0 Modelul matematic al !ro#lemei de
determinare a mul%imii sta#ile interior maJime99 Anale tiin%ifice0
Facultatea de Matematic i Informatic0 Universitatea de Stat
din Moldova0 Bol0 - $ C'iinu5 C&"( )**>( !0+/$1-0
>0 Cataranciuc Sergiu( Toadere Teodor( Iaco# &ugenia$Maria0
"ro#leme de teoria grafelor0 ; CluN$Na!oca5 Univ0 <a#e$<oleai(
.//=0 ; 11 !0
=0 Ciurea &leonor0 Algoritmi0 Introducere 8n algoritmica grafurilor0
; <ucureti5 &ditura Te'nic( )**.0 ; )** !0
-0 Croitoru C0 Te'nici de #a6 8n o!timi6area com#inatorie0 ; Iai5
Univ0 ]Al0 I0 Cu6a^( .//)0
+0 Tomescu Ioan0 Com#inatorica i teoria grafurilor0 ; <ucureti5
Ti!ografia Univ0 din <ucureti( ./130 ; )+1 !0
10 Tomescu Ioan0 "ro#leme de com#inatoric i teoria grafurilor0 ;
<ucureti5 &ditura 7idactic i "edagogic( ./3.0 ; )1* !0
30 Tomescu Ioan0 Teoria grafurilor0 99 Matematici clasice i
moderne0 Bol0I0 ; <ucureti5 &d0 Te'nic( ./13( !0 ./>$>*30
/0 Toadere Teodor0 &lemente de teoria grafelor0 CluN$Na!oca( Univ0
<a#e$<oleai( .//)( .>> !ag0
.*0 Toadere Teodor( Gasa ,oltan0 Com#inatoric i teoria grafelor0
"artea I0 ; CluN$Na!oca5 Univ0 <a#e$<oleai( .//30 ; 1* !0
..0 Toadere Teodor( Gasa ,oltan0 Com#inatoric i teoria grafelor0
"artea II0 ; CluN$Na!oca5 Univ0 <a#e$<oleai( .//30 ; 3. !0
.)0 Aigner M0 Com#inatorial t'eore0 ; Neg$Hor[5 S!ringer( )**= 0$
-** !0
.>0 <ertese[as 70"0 A sim!le and fast la#el correcting algorit'm for
s'ortest !art's0 .//>0 Netgor[s )>( !0 1*>$1*/0
.=0 <et' T0( Eungnic[el 70( Len6 F0 7esign Te'ore0 )
nd
edition0 ;
Cam#ridge5 Cam#ridge Universite "ress( .//30 ; -.> !0
.>1
.-0 <iggs N0L0 Alge#raic ?ra!' T'eore )
nd
edition0 ; Cam#ridge5
Cam#ridge Universite "ress( .//>0 ; ).> !0
.+0 ?ross I0( Eellen E0 ?ra!' T'eore and its A!!lications0 ; Neg
Hor[5 CRC "ress( .///0 ; -/) !0
.10 Eensen T0R0( Toft <0 ?ra!' Coloring "ro#lems0 ; Neg Hor[(
.//-0
.30 Eungnic[el 70 ?ra!'s( Netgor[s and Algorit'ms0 ; <erlin5
S!ringer( .///0
./0 hij k0( kjlmnjop qr0( stuvwx qr0 yjzpnj{x|{ | wxwt|}
~|zt|p{tuxi wtjn|pvj~0; jzm~w5 |n( ./1/0 ; ->+ z0
)*0 wzwm{n 0( wwp| 0 jx{x{ nwo | z{p|0 ; jzm~w5
wmw( ./1=0 ; >++ z0
).0 {tj~ 00( jnju~ 00( wpwtj~ 00 {jn| nwoj~0
jzm~w5 zw mjtw( ./1+0 ; >/) z0
))0 {n{}|xw 00 Qnwo | |i ln|v{x{x|{0 ; jzm~w5
ynjz~{{x|{( ./1/0 ; .=> z0
)>0 {nr 0 {jn| nwoj~ | {{ ln|v{x{x|0 ; jzm~w5 (
./+)0 ; >./ z0
)=0 Qw~n|tj~ Q0y0( wljr{xmj h0h0 jnx|m }ww lj
|zmn{pxj vwp{vwp|m{0
)-0 ~zp|x{{~ 0h0 yn|v{x{x|{ p{jn||| nwoj~ ~
lnjnwvv|nj~wx||0 ; jzm~w5 wmw( ./3-0 ; >-) z0
)+0 v{t|{~ 0h0( {tux|mj~ 00( wn~wxj~ 00( m{~|
000 {m|| lj p{jn|| nwoj~0 ; jzm~w5 wmw( .//*0 ;
>3> z0
)10 nvjtu{~ 00( {tux|m 00 mzpn{vwtux{ }ww| xw
nwowi0 ; |{~5 wmj~w qvmw( ./+30 ; .1+ z0
)30 {vtxi|xw 000 htjn|pv n{{x| }ww| o ~xpn{xx{
zpj|~jv vxjr{zp~{0 {jn| jlp|v0 n{{x|0 ; |{~5
./1>0
)/0 mj~ h0h0 zxj~ p{jn|| nwoj~0 ; jzm~w5 wmw( ./310
; >3. z0
>*0 zzt{j~wx| lj ln|mtwxj p{jn|| nwoj~0 yj n{0 h
ht{mz{{~w00 ; j~jz||nzm5 wmw( ./3+0 ; .+/ z0
.>3
>.0 wv{njx y0( qr0 ~wx |xp0 {jn| nwoj~( p{jn|
mj|nj~wx| | tjm$zi{v0 ; jzm~w5 wmw( ./3*0 ; .>/ z0
>)0 n|zpjo|{z 0 {jn| nwoj~0 htjn|pv|{zm| ljij0 ;
jzm~w5 |n( ./130 ; =>) z0
>>0 |lzm| 0 jv|xwpjn|mw t lnjnwvv|zpj~0 ; jzm~w5
|n( ./330 ; ).> z0
>=0 wx|mw 0 htjn|pv jlp|v|}w|| xw z{pi0 ; jzm~w5
|n( ./3.0
>-0 {t|ij~ h00( {np{x 00( n{|m 00 yn|v{x{x|{
p{jn|| nwoj~ t lnj{mp|nj~wx| |zmn{pxi zpnjzp~0 ;
jzm~w5 wmw( ./1=0 ; >*> z0
>+0 {{ln{xmj | n0 htjn|pv | lnjnwvv n{{x| }ww
xw nwowi | z{pi0 ; j~jz||nzm5 wmw( .//*0 ; -.= z0
>10 n{ 0 Qnwo | |i ln|v{x{x|{0 ; jzm~w5 |n( ./+-( ;
.1= z0
>30 n{ 0 {jn| nwoj~0 ; jzm~w5 wmw( ./3*0 ; >>+ z0
>/0 ywlw|v|pn| k0( pw|t| 0 jv|xwpjnxw jlp|v|}w|5
htjn|pv | ztjrxjzpu0 ; jzm~w5 |n( ./3-0 ; -.* z0
=*0 ~wt| 0( itwz|nwvwx 0 Qnwo( z{p| | wtjn|pv0 ;
jzm~w5 |n( ./3=0 ; =-= z0
=.0 mjnjjwpj~ 0h0 htjn|pv|{zm| wxwt|} vjt{mtnxi
nwoj~0 ; j~jz||nzm5 Qs( ./330 ; 3= z0
=)0 jtpwx y00( wv|m| q00( yn|zwmwn 00
mzpn{vwtux{ }ww| xw nwowi | wtjn|pv |i n{{x|0 ;
||x{~5 p||xw( ./1>0 ; /* z0
=>0 wpp s0 {jn| nwoj~0 ; jzm~w5 |n( ./330
==0 {jn| nwoj~0 yj n{0 00ht{mz{{~w0 ; jzm~w5 |n(
./1=0 ; ))> z0
=-0 s|tzjx 0 ~{{x|{ ~ p{jn| nwoj~0 ; jzm~w5 |n(
./110 ; )*1 z0
=+0 kwnwn| 0( ywtv{n 0 y{n{|zt{x|{ nwoj~0 ; jzm~w5
|n( ./110 ; >)= z0
=10 kwnwn| 0 {jn| nwoj~0 ; jzm~w5 |n( ./1>0 ; >** z0
=30 k|v|{zm|{ ln|tjr{x| pjljtj|| | p{jn|| nwoj~0 yj
n{0 0|xw0 ; jzm~w5 |n( ./310 ; -+* z0
.>/
Sergiu CATARANCIUC
Angela NICULI
As!ecte algoritmice
ale teoriei grafurilor
"artea I
Redactor Antonina 9embic%i
Mac'etare com!uteri6at atiana Moro.
Reali6are grafic a co!ertei Jrina Andros
<un de ti!ar .-0 *+0 )**+
Formatul +* 3=
.
9
.+
Coli de ti!ar /(*
Coli editoriale 1(-
Comanda +.
TiraNul -*
Centrul editorial$!oligrafic al USM
Str0 Al0 Mateevici( +*( C'iinu( M7 )**/
.=*

Vous aimerez peut-être aussi