ni
a en Informati
a
Es
ola Polite
ni
a Superior
Universitat de Lleida
Joan Gimbert
Ramiro Moreno
Josep Maria Ribo
Magda Valls
Proleg
En aquelles enginyeries en les quals l'estudi del pro
essament i de la transmissio de la informa
io
en
onstituexin la nalitat o el mitja, les estru
tures matematiques dis
retes (nites o numerables)
esdevenen una eina important, ja que permeten modelitzar fenomens de naturalesa dis
reta
om
son els que tra
ten les te
nologies de la informa
io. E s per aixo que, en els a
tuals plans d'estudi
de les enginyeries d'informati
a, els
ontinguts basi
s del que hom anomena matemati
a dis
reta
juguen un paper important. Aix su
eeix a l'Es
ola Universitaria Polite
ni
a de la Universitat de
Lleida, on hem a
umulat una
erta experien
ia en la do
en
ia d'alguns d'aquests
ontinguts en els
darrers anys. Entre aquests
ontinguts, l'estudi de la teoria de grafs i tambe (per la seva vessant
onstru
tiva) dels seus algorismes ha estimulat la
ol.labora
io entre persones que treballem en el
amp de la matemati
a i altres de mes propers al mon de la programa
io. Tot plegat ha esperonat
una tas
a en equip multidis
iplinar que ha donat
om a fruit el llibre que teniu a les vostres mans.
Voldrem que aquest llibre servs, d'una banda,
om una eina d'aprenentage per a totes aquelles
persones que, sense haver de tenir un gran bagatge matemati
, els vingui de gust tafanejar en el
amp de la teoria de grafs i dels seus algorismes. I, d'altra banda, voldrem que fos una eina de
suport per a tots aquells estudiants universitaris que s'ini
ien en aquesta dis
iplina (en aquest sentit
hem de
onfessar que hem tingut molt presents els nostres estudiants d'Enginyeria Informati
a a
l'hora de reda
tar-lo).
En aquest llibre,
on
ebut
om un primer apropament a aquesta materia, hem fet un esfor
perque
els temes siguin motivadors i per in
loure un bon grapat d'exemples i una variada
ol.le
io de
problemes (amb indi
a
ions i solu
ions). Aix mateix, hem pro
urat expli
ar detalladament els
algorismes i la teoria que els fonamenta i, ns i tot, ens hem permes petites in
ursions en algun
tema mes avan
at. Aix,
ada
aptol
onsta d'una exposi
io, pensem que a
urada, dels
ontinguts
teori
s basi
s amanida amb algorismes detallats i exemples a
laridors de tot plegat. Aquesta
exposi
io es
ompleta amb algun annex en el qual s'introdueixen problemes que habitualment tenen
una resolu
io de
aire algorsmi
. Cada
aptol es
lou amb una amplia
ol.le
io de problemes, de
di
ultat diversa, amb solu
ions o indi
a
ions.
El llibre esta estru
turat en set
aptols, tants
om ponts unien les diferents parts de l'antiga
iutat de Konigsberg. Un passatemps dels seus
iutadans, que
onsistia a
er
ar una passejada que
travesses
adas
un dels set ponts una sola vegada, va esdevenir un problema matemati
. La seva
resolu
io, donada per Euler, se sol
onsiderar l'origen de la teoria de grafs. Des d'aleshores aquesta
teoria s'ha anat desenvolupant donant llo
a moltes branques de les quals, en aquest llibre, ens ha
algut fer una tria. Hem optat per presentar aquells temes que tinguessin un
ara
ter algorsmi
i
que, alhora, no requerissin de gaires
oneixements matemati
s previs.
D'aquesta manera, en el primer
aptol s'introdueixen les no
ions i la terminologia basi
a sobre
els grafs, del tot ne
essaries per
omen
ar amb bon peu el nostre parti
ular viatge pel mon de
la teoria de grafs. En aquesta aventura ens trobarem amb tot un seguit de problemes amb els
quals ens anirem barallant al llarg de la resta dels
aptols. Segurament ens sorprendra des
obrir
i
ii
que aquests problemes son del tot tangibles i interessen a mes d'un enginyer. Imaginem-nos, per
exemple, un pas petit i ple de
omarques i un mapa de
arreteres d'alguna d'aquestes
omarques. A
la Conselleria d'Obres Publiques li pot interessar saber si tots els pobles estan
omuni
ats entre si i
quins son els
amins mes
urts entre
ada parella de pobles (
aptol 2:
onnexio i distan
ies) o tambe
om millorar aquesta xarxa de
arreteres de manera que, si fos possible, evites els
reuaments entre
elles (
aptol 5: planaritat). Tal vegada, quan arribi el perode ele
toral, al president li agradara
saber si en un sol viatge pot visitar el
asal de jubilats de tots els pobles de la
omar
a sense repetirne
ap (
aptol 3:
i
les hamiltonians i...), o be si hi ha un traje
te que li permeti inaugurar totes
les
arreteres sense passar dues vegades per la mateixa (...
ir
uits eulerians). Possiblement, en un
temps passat, la Conselleria de Comuni
a
ions va haver de determinar quin era el nombre mnim
de frequen
ies que havia d'assignar a les emissores de radio que hi operaven, tenint en
ompte que
les esta
ions situades a menys d'una
erta distan
ia havien de tenir frequen
ies d'emissio diferents
(
aptol 6:
olora
io). Ara, amb l'arribada de les noves te
nologies, l'empresa responsable de la
instal.la
io de la televisio per
able es planteja el disseny d'una xarxa que
onne
ti tots els pobles
amb la longitud mnima de
able (
aptol 4: arbres). Aix mateix, el te
ni
de plani
a
io d'aquesta
empresa te l'en
arre
d'assignar una llista de tasques als treballadors d'a
ord amb les seves aptituds
i de la millor manera possible segons un
ert
riteri (
aptol 7: aparellaments).
A mes a mes, no ens hem pogut estar de presentar alguna apli
a
io una mi
a mes ludi
a de la
teoria de grafs,
om ara la manera de trobar la sortida d'un laberint o be la
er
a d'estrategies
guanyadores en
erts tipus de jo
s (annexos).
Pel que fa a la
ol.le
io de problemes que presentem a la de
ada
aptol, volem esmentar que es
el resultat d'un treball tant de re
opila
io i d'adapta
io de problemes existents en la literatura
om
d'elabora
io de nous problemes. Amb aquest re
ull pretenem, d'una banda, ajudar l'estudiant
a assimilar els
ontinguts de
ada tema i, d'una altra, afavorir l'adquisi
io de
ertes habilitats
te
niques que fa
ilitin la manipula
io dels obje
tes i dels
on
eptes presentats. Tanmateix, ens hem
esfor
at a plantejar problemes de la vida real que es poden resoldre modelitzant-los mitjan
ant grafs
i apli
ant els
oneixements teori
s assolits. Hem pro
urat que els problemes siguin representatius
del tema tra
tat i in
loguin tots i
adas
un dels
on
eptes presentats en la teoria, tot i que tambe hi
podreu trobar problemes auto
ontinguts, es a dir, en els quals es donen noves deni
ions a partir
de les quals es proposa provar determinades propietats. Tambe hem
regut important in
loure
les solu
ions numeriques d'aquells problemes que les tinguin, i les indi
a
ions per a aquells la
demostra
io dels quals no sigui gaire immediata.
Per tal d'assolir un millor aprotament d'aquest text, es bo tenir presents les
onsidera
ions
seguents:
En el re
ull de problemes, en trobareu de nivells diferents: des d'aquells problemes senzills que
pretenen que l'estudiant desenvolupi te
niques basiques i veriqui el seu grau de
omprensio
dels
on
eptes, ns a aquells de di
ultat mes
onsiderable. Els problemes que requereixen
un pel mes d'enginy, els hem volgut mar
ar amb una estrella (?), i tambe hem pensat que
fora interessant mar
ar amb un diamant (3) aquells problemes que han estat proposats en
algun examen de la nostra Es
ola.
Els algorismes que apareixen en aquest text estan des
rits en un pseudo
odi que bus
a, d'una
banda, la
omprensio fa
il de l'algorisme i, d'una altra, ser una aproxima
io a la manera en
que aquests podrien ser implementats en un llenguatge de programa
io. En aquest sentit, la
nostra inten
io es que aquestes des
rip
ions en pseudo
odi puguin ser un ajut real al pro
es
d'implementa
io dels algorismes que dugui a minimitzar el
ost d'aquest pro
es. Per fa
ilitar
la
omprensio dels algorismes hem in
los un annex introdu
tori a la nota
io algorsmi
a i a
les estru
tures de dades que fem servir en aquest llibre.
iii
La bibliograa que
item esta
onstituda fonamentalment per textos
lassi
s de la teoria de
grafs i per altres d'es
rits en llengua
atalana per persones expertes en la do
en
ia i la re
er
a
d'aquesta materia. En aquests textos podreu trobar una bibliograa mes extensa.
No podem a
abar aquest proleg sense dedi
ar unes paraules d'agrament adre
ades a les persones
que d'una manera o d'una altra han in
ut en l'elabora
io d'aquest material. En primer llo
,
voldrem agrair als professors dels Departaments de Matemati
a Apli
ada i Telemati
a, Matemati
a
Apli
ada II i Llenguatges i Sistemes Informati
s de la Universitat Polite
ni
a de Catalunya, els
oneixements que ens han transmes i el material que ens han fa
ilitat. En un ambit mes proper,
no tenim mes remei que re
ordar-nos del nostre jefe i \pare espiritual" Josep M. Miret sense qui
res no hauria estat possible, i tambe de la resta de
ompanys de l'Es
ola dels quals hem rebut un
suport
onstant.
Index
1 Grafs i digrafs:
on
eptes basi
s
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
1.9
Deni
io de graf . . . . . . . . . . . . .
Grau d'un vertex . . . . . . . . . . . . .
Representa
io d'un graf . . . . . . . . .
Isomorsme de grafs . . . . . . . . . . .
Exemples importants de grafs . . . . . .
Subgrafs. Grafs derivats d'un graf . . .
Opera
ions entre grafs . . . . . . . . . .
Digrafs . . . . . . . . . . . . . . . . . . .
Variants del
on
epte de graf i digraf . .
.
.
.
.
.
.
.
.
.
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.
.
.
.
.
.
.
.
.
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.
.
.
.
.
.
.
.
.
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.
.
.
.
.
.
.
.
.
.. 3
.. 4
.. 4
.. 6
.. 7
.. 8
.. 9
. . 12
. . 13
Problemes
15
21
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.
.
.
.
.
.
.
..
..
..
..
..
..
..
25
25
27
28
31
32
34
37
Problemes
39
43
.
.
.
.
.
.
.
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.
.
.
.
.
.
.
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.
.
.
.
.
.
.
..
..
..
..
..
..
..
45
45
48
48
49
50
51
54
Problemes
55
59
INDEX
4 Arbres
61
61
63
64
66
68
71
Problemes
75
81
Bibliograa
84
Cap
tol 1
Deni
io. Un graf G = (V; A) esta format per un
onjunt nit i no buit V i per un
onjunt A de
parells no ordenats d'elements diferents de V .
Als elements de V els anomenarem vertexs i als elements de A arestes . Si a = fu; vg es una aresta,
direm que u i v son vertexs adja
ents , es
rivint u v, i tambe direm que l'aresta a es in
ident
amb els vertexs u i v. Normalment, per abreujar la nota
io es
riurem a = uv en llo
de a = fu; vg.
Deni
io. L'ordre d'un graf G = (V; A) es el nombre de vertexs de G, es a dir, el
ardinal de V
que denotarem per jV j; la mida de G es el nombre d'arestes de G, es a dir, jAj.
Exemple. Donat el graf G = (V; A), on
V = fa; b;
; d; e; f g i A = ffa; bg; fa;
g; fb;
g; fb; dg; fb; eg; f
; dg; fd; egg;
l'ordre de G es 6 i la seva mida es 7. Pel que fa a les adja
en
ies observeu que, per exemple, a
i b son adja
ents, pero en
anvi a i d no ho son. Aquestes rela
ions es veuen immediatament si
es representa el graf mitjan
ant un dibuix on els vertexs son punts del pla i les arestes, lnies que
uneixen vertexs adja
ents. Aix, el graf G donat anteriorment pot representar-se mitjan
ant el
dibuix de la gura 1.1.
e
d
Figura 1.1: Representa
io gra
a d'un graf.
Quant a la representa
io gra
a d'un graf
al assenyalar, d'una banda, la seva arbitrarietat i, de
l'altra, el
ara
ter intutiu d'aquesta que ens sera de gran ajuda a l'hora de
omprendre
on
eptes
i arguments abstra
tes relatius als grafs.
Tambe hem de dir que, dissortadament, no hi ha una terminologia uni
ada en la literatura sobre
teoria de grafs.
3
CAPITOL 1. GRAFS I DIGRAFS: CONCEPTES BASICS
mida de
G,
es a dir,
X
v
( ) = 2jAj:
g v
Corol.lari 1.2. Tot graf te un nombre parell de vertexs de grau senar.
Com que la suma de tots els graus es un nombre parell, aleshores el nombre de
vertexs de grau senar ha de ser parell.
Demostra io.
D'UN GRAF
1.3. REPRESENTACIO
Deni
io. La matriu d'adja
en
ia d'un graf G = (V; A), amb el
onjunt de vertexs V = fv ; v ; : : : ; v g,
es la matriu quadrada M (G) = (a ) de tamany n n denida de la manera seguent:
1 si v i v son adja
ents;
a =
0 altrament.
Deni
io. La matriu d'in
iden
ia d'un graf G = (V; A), amb el
onjunt de vertexs V = fv ; v ; : : : ; v g
i amb el
onjunt d'arestes A = fa ; a ; : : : ; a g, es la matriu M (G) = (b ) de tamany n m denida de la manera seguent:
1 si v es in
ident amb a ;
b =
0 altrament.
Exemple. Donat el graf G = (V; A), on V = fa; b;
; dg i A = fab; a
; ad; bdg |representat en la
gura 1.2|, la matriu d'adja
en
ia i la matriu d'in
iden
ia de G son
0
0
0 1 1 11
1 1 1 01
B 1 0 0 1 C
B 1 0 0 1 C
C
B
C
M (G) = B
1 0 0 0 A i M (G) = 0 1 0 0 A ; respe
tivament.
1 1 0 0
0 0 1 1
1
ij
ij
ij
d
Figura 1.2:
Les seguents propietats, relatives a les matrius d'adja
en
ia i d'in
iden
ia d'un graf, es dedueixen
dire
tament de les seves
orresponents deni
ions:
1. La matriu d'adja
en
ia d'un graf es una matriu simetri
a. A mes, el nombre d'uns de
adas
una de les seves les
oin
ideix amb el grau del vertex
orresponent.
2. El nombre d'uns de
adas
una de les les de la matriu d'in
iden
ia d'un graf es igual al grau
del vertex
orresponent, i el nombre d'uns de
adas
una de les seves
olumnes es 2.
Observeu que el lema de les en
aixades de mans tambe es pot demostrar emprant la matriu
d'in
iden
ia del graf. Aix, la suma de les les d'aquesta matriu, que
orrespon a la suma dels
graus dels vertexs del graf, es igual a la suma de les
olumnes ja que totes dues sumes
oin
ideixen
amb la suma de tots els elements de la matriu, i aquesta representa el doble del nombre d'arestes
del graf.
En
as que hi hagi molts parells de vertexs de G no adja
ents entre si, tant la matriu d'adja
en
ia
om la d'in
iden
ia resulten representa
ions ine
ients pel gran nombre d'entrades nul.les que
ontenen. Aleshores
al pensar a utilitzar una estru
tura mes e
ient, des del punt de vista de
memoria ne
essitada,
om ara la llista d'adja
en
ies .
Deni
io. La llista d'adja
en
ies d'un graf G amb
onjunt de vertexs
V = fv ; v ; : : : ; v g
es una llista formada per n subllistes, una per a
ada vertex v , on guren els vertexs adja
ents al
orresponent vertex v .
1
ij
CAPITOL 1. GRAFS I DIGRAFS: CONCEPTES BASICS
Deni
io. Direm que dos grafs G = (V; A) i G0 = (V 0 ; A0 ) son isomorfs , i ho denotarem per
G ' G0 , si existeix una apli
a
i
o bije
tiva f de V en V 0 tal que preserva les adja
en
ies; es a dir,
8u; v 2 V;
Exemple.
v () f (u) f (v):
Els grafs representats en la gura 1.3 son isomorfs ja que l'apli a io g denida de
4
5
Figura 1.3: Exemple de grafs isomorfs.
1
f
Podem dir, d'una manera intutiva, que dos grafs isomorfs nomes es diferen
ien per la manera
que se n'etiqueten els vertexs i, en general, per la seva representa
io gra
a. Els vertexs de dos
grafs isomorfs es poden identi
ar un a un de manera que les adja
en
ies de l'un i de l'altre siguin
les mateixes, es a dir, l'estru
tura dels dos grafs, un
op identi
ats els vertexs
orresponents, es
identi
a. En parti
ular, dos grafs isomorfs tenen el mateix nombre de vertexs i el mateix nombre
d'arestes. Aquests parametres son exemples de parametres invariants per isomorsmes. Es deneix
un invariant d'un graf G
om un nombre o una sequen
ia de nombres asso
iats a G que pren el
mateix valor en tots els grafs isomorfs a G.
Exemple. L'ordre, la mida, la sequen
ia de graus i el nombre de vertexs amb un grau determinat
son invariants d'un graf.
Un sistema
omplet d'invariants es un
onjunt d'invariants que determina un graf llevat d'isomorsmes, es a dir, tots els grafs que tenen asso
iats un mateix sistema
omplet d'invariants son
isomorfs entre si.
n(n
1)
m;n
CAPITOL 1. GRAFS I DIGRAFS: CONCEPTES BASICS
K6
K3;2
m;1
1;n
-a
-bd
d
d
d
Figura 1.6: Exemple de supressio d'un vertex i d'una aresta d'un graf.
Si u i v son dos vertexs no adja
ents d'un graf G = (V; A), denim que
G + uv = (V; A [ fuv g);
es a dir, G + uv es el graf que s'obte de G afegint l'aresta uv.
10
CAPITOL 1. GRAFS I DIGRAFS: CONCEPTES BASICS
G1
G2
G1
+G
m;n
C5
W6
artesia
11
Exemple.
A partir de la deni
io de graf produ
te
artesia i de graf hiper
ub es dedueixen les propietats
seguents:
1. Si G es un graf d'ordre n i mida m i G es un graf d'ordre n i mida m , aleshores G G
es un graf d'ordre n n i mida n m + n m .
1
12
CAPITOL 1. GRAFS I DIGRAFS: CONCEPTES BASICS
ab
ad
ae
be L(G) bd
Figura 1.12: Exemple d'un graf lnia.
1.8 Digrafs
El
on
epte de digraf o graf dirigit deriva dire
tament del
on
epte de graf exigint que les arestes,
que ara en direm ar
s , siguin parells ordenats de vertexs diferents.
Deni
io. Un digraf G = (V; A) esta format per un
onjunt nit i no buit V i per un
onjunt A
de parells ordenats d'elements diferents de V .
Els elements de V s'anomenen vertexs i els de A s'anomenen ar
s . Si a = (u; v) es un ar
direm
que u es adja
ent
ap a v i que v es adja
ent des de u. Tambe direm que l'ar
a = (u; v) es in
ident
des de u
ap a v. Normalment, per abreujar la nota
io es
riurem a = uv en llo
de a = (u; v).
Els
on
eptes d'ordre i mida d'un digraf son analegs als d'un graf, es a dir, l'ordre del digraf
G = (V; A)
es el nombre de vertexs de V i la mida de G es el nombre d'ar
s de G.
Exemple. El digraf G = (V; A), on V = fa; b;
g i A = f(a; b); (a;
); (b; a); (
; b)g, es un digraf
d'ordre 3 i mida 4.
Una altra manera de representar un digraf es mitjan
ant un dibuix on els vertexs es representen
per punts del pla i on
ada ar
a = uv es representa per una lnia que va des del punt asso
iat a u
al punt
orresponent a v i indi
arem la dire
io per mitja d'una punta de
etxa. Aix, el digraf de
l'exemple anterior pot representar-se mitjan
ant el dibuix de la gura 1.13.
a
b
Figura 1.13: Representa
io gra
a d'un digraf.
En general, podem dir que en les situa
ions on l'ordre (o la dire
io) en les rela
ions entre els
obje
tes impli
ats sigui rellevant, un digraf resulta,
om a model matemati
, mes adequat que un
graf.
Deni
io. Si v es un vertex d'un digraf G = (V; A), el grau de sortida de v en el digraf G, que
denotarem per g (v), es el nombre d'ar
s in
idents des de v, es a dir,
g (v ) = jfu 2 V j (v; u) 2 Agj:
+
13
El grau d'entrada de v, que denotarem per g (v), es el nombre d'ar
s in
idents
ap a v, es a dir,
g (v ) = jfu 2 V j (u; v ) 2 Agj:
La rela
io entre l'ordre, la mida i els graus d'entrada i sortida dels vertexs d'un digraf ve donada
pel teorema seguent:
Teorema 1.3. La suma de tots els graus de sortida dels vertexs d'un digraf G = (V; A) es igual a
a dir,
la suma de tots els graus d'entrada, i val la mida del digraf. Es
X
(v) =
( ) = jAj:
g+ v
Demostra
io. Cada ar
a = uv de G es in
ident des d'un uni
vertex u
ap a un uni
vertex v i,
per tant,
ontribueix en una unitat en la suma de tots els graus de sortida i en una unitat en la
suma de tots els graus d'entrada. Per tant, la suma de tots els graus de sortida es igual al nombre
d'ar
s, i aquest tambe es igual a la suma de tots els graus d'entrada.
Deni
io. Un digraf G = (V; A) es simetri
si
8u; v 2 V u 6= v; (u; v) 2 A () (v; u) 2 A:
Un digraf G = (V; A) es asimetri
si
8u; v 2 V u 6= v; (u; v) 2 A ) (v; u) 62 A;
o, equivalentment, no hi ha
ap parell de vertexs diferents u i v tals que (u; v) 2 A i (v; u) 2 A.
G1
G2
En els digrafs representats en la gura 1.14 podeu veure la diferen
ia entre un digraf simetri
i un
d'asimetri
.
Observeu que un graf G = (V; A) pot representar-se mitjan
ant un digraf simetri
G0 substituint
ada aresta fu; vg de G pel parell d'ar
s (u; v) i (v; u). Altrament, si s'assigna a
ada aresta de
G una dire
i
o, es a dir, si s'asso
ia a
ada aresta un uni
ar
, s'obte un digraf asimetri
que
s'anomena orienta
io de G. D'altra banda, a tot digraf G = (V; A) podem asso
iar-li un graf
G0 = (V; fuv j (u; v ) 2 A o (v; u) 2 Ag) que anomenarem graf subja
ent a G.
En la gura 1.15 podeu veure
om es
onstrueix el graf subja
ent a un digraf donat.
Si en un graf (digraf) permetem l'existen
ia d'arestes (ar
s) paral.leles , es a dir, mes
d'una aresta (ar
s amb la mateixa dire
io) entre un mateix parell de vertexs, aleshores direm
que tenim un multigraf (multidigraf ). Si, a mes, admetem els lla
os (adja
en
ies d'un vertex a si
mateix), llavors parlarem de pseudografs .
Deni io.
14
CAPITOL 1. GRAFS I DIGRAFS: CONCEPTES BASICS
G0
Deni io.
5
G1
G2
5
7
G3
Problemes
Determineu el nombre de vertexs d'un graf G en els
asos seguents:
a) G te 9 arestes i tots els seus vertexs tenen grau 3.
b) G es un graf regular amb 15 arestes.
) G te 10 arestes, 3 vertexs de grau 4 i els restants, de grau 2.
Problema 2. Demostreu que si G es un graf d regular, on d es senar, aleshores G te un nombre
parell de vertexs.
Problema 3. Proveu que si G es un graf d'ordre n i mida m, aleshores m n(n 1). Per a
quins grafs se satisfa la igualtat?
Problema 4. Sigui G un graf d'ordre n i mida m. Sigui (G) el grau mnim de G i (G) el grau
maxim de G. Proveu que:
a) (G) 2m=n.
b) 2m=n (G).
Problema 1.
Problema 5.
a) Demostreu que no hi ha
ap graf d'ordre mes gran o igual que 2 i amb tots els graus dels
vertexs diferents.
b) En una reunio de n persones (n 2) es produeixen un determinat nombre de saluta
ions
entre els assistents. Demostreu que hi ha dues persones que han fet exa
tament el mateix
nombre de saluta
ions.
Problema 6. Spirou i la seva parella organitzen una festa a la que hi
onviden 4 parelles mes.
Quan es troben, alguns
onvidats se saluden donant-se la ma, pero,
om es d'esperar, ningu no
ho fa amb la seva propia parella. En a
abar la festa, Spirou pregunta a tots els altres a quantes
persones han donat la ma i li donen nou respostes diferents. A quantes persones ha donat la ma
Spirou? A quantes la seva parella?
Problema 7. Per a
adas
un dels
asos seguents, examineu si existeixen grafs d'ordre 6 de forma
que els graus dels seus vertexs siguin els valors donats. En
as que existissin, doneu-ne un exemple.
a) 5,5,5,5,3,3.
b) 5,5,4,3,3,2.
) 5,4,3,2,2,1.
d) 4,4,4,4,2,2.
15
16
?
1. PROBLEMES
Problema 8. Demostreu que si G = (V; A) es un graf que no
onte 3-
i
les i tal que jV j = 2m,
aleshores jAj m (un 3-
i
le en un graf es un subgraf format per tres vertexs adja
ents dos a
dos).
2
Problema 9.
a) Trobeu la matriu d'adja
en
ia, la matriu d'in
iden
ia i la llista d'adja
en
ies del graf G =
(V; A) on
V = fa; b;
; d; eg
A = fab; a
; b
; bd;
d;
e; deg
(Representem per ab l'aresta fa; bg).
b) Dibuixeu el graf G = (V; A) que te matriu d'adja
en
ia
0
0 1 0 1 01
B 1 0 0 0 1 C
B
C
C
M (G) = B
B 0 0 0 1 0 C:
1 0 1 0 1 A
0 1 0 1 0
A
Problema 10.
ij
i;j
ij
ij
Problema 12.
a)
b)
)
d)
1)=2
17
1. PROBLEMES
a)
b)
)
3
Problema 14.
Problema 15.
a) Demostreu que s : 7; 6; 5; 4; 4; 3; 2; 1 es una sequen
ia gra
a, a partir de la
ara
teritza
io
donada per Havel i Hakimi, que podreu trobar degudament enun
iada i justi
ada en l'annex
d'aquest
aptol.
b) Proveu que el graf que te s (sequen
ia donada en l'apartat anterior)
om a sequen
ia de graus
es uni
llevat d'isomorsmes.
Problema 16. Donats els grafs K , C i W :
a) Determineu l'ordre i la mida de
adas
un d'aquests grafs.
b) Per a quins valors de n aquests grafs son regulars?
) Per a quins valors de n aquests grafs son bipartits?
d) Des
riviu
om son les seves matrius d'adja
en
ia.
?
e) Quants subgrafs de mida m te K , 0 m
Problema 17. Donat el graf K :
a) Determineu el seu ordre i la seva mida.
b) Per a quins valors de m i n, es un graf regular?
) Determineu K .
d) Com es la seva matriu d'adja
en
ia?
n
m;n
m;n
n(n
1)
18
3
1. PROBLEMES
Problema 18. Determineu, emprant arguments
ombinatori
s, quin es el nombre de grafs 3regulars no identi
s que tenen a V = f1; 2; 3; 4; 5; 6g
om a
onjunt de vertexs. Quants n'hi ha de
no isomorfs?
Problema 19.
a) Sigui G = (V; A) un graf d'ordre n i G el graf
omplementari de G. Demostreu que tot vertex
v de G satisf
a que
g (v ) + g (v ) = n 1;
on g (v) i g (v) representen el grau del vertex v en el graf G i en el graf G, respe
tivament.
b) Quina rela
io hi ha entre la matriu d'adja
en
ia del graf G i la matriu d'adja
en
ia del graf
omplementari G?
) Siguin G = (V ; A ) i G = (V ; A ) dos grafs. Demostreu que G i G son isomorfs si, i
nomes si, G i G ho son.
d) Determineu el nombre de grafs no isomorfs d'ordre 10 i mida 43.
Problema 20. Diem que un graf G es auto
omplementari si es isomorf al seu graf
omplementari
G.
a) Dibuixeu un graf d'ordre 4 i un d'ordre 5 que siguin auto
omplementaris.
b) Demostreu que si G es un graf auto
omplementari d'ordre n, aleshores n 0 (mod 4) o
n 1 (mod 4).
Problema 21. Demostreu els enun
iats seguents:
a) Si G es un graf d'ordre 6, aleshores G te tres vertexs adja
ents dos a dos, o no adja
ents dos
a dos.
b) En tota reunio de sis persones n'hi ha tres que, dos a dos, es
oneixen o que, dos a dos, no
es
oneixen.
) Comproveu que l'arma
io de l'apartat anterior no es
erta per a grups de
in
persones o
menys.
G
Problema 22.
a) Donat el graf G = (V; A) on V = fa; b;
; dg i A = fab; b
; bd;
dg, determineu el seu graf lnia
L(G).
b) Dibuixeu un graf d'ordre 3 que sigui isomorf al seu graf lnia.
) Demostreu que el graf lnia de K te n(n 1)=2 vertexs i es un graf r-regular, on r = 2n 4.
Problema 23. Sigui G = (V; A) el graf de Petersen representat per la gura seguent:
n
19
1. PROBLEMES
ij
ij
20
1. PROBLEMES
d
n
d
n
2
2
n+1
i+1
a) n = 6.
b) Si G es d-regular, hi ha vertexs. Pero
om que dj30 i d 1, les uniques possibilitats
son que d = 1; 2; 3; 5 i, respe
tivament, n = 30; 15; 10; 6.
) n = 7.
Problema 4. Utilitzeu el lema de les en
aixades de mans.
Problema 5. Tingueu en
ompte que si G = (V; A) es un graf d'ordre n, aleshores tenim que
0 g(v) n 1; 8v 2 V .
Problema 6. Tots dos han donat la ma a quatre persones.
30
30
Problema 7.
a)
b)
)
d)
No.
S.
No.
S.
Utilitzeu el metode d'indu
io sobre m. Considereu dos vertexs u i v adja
ents, i
trobeu la ta per a la mida de G a partir de la ta de la mida de G fu; vg.
Problema 8.
Problema 9.
MA
0
B 1
B
(G) = B
B 1
0
0
1
0
1
1
0
1
1
0
1
1
0
1
1
0
1
01
0C
C
1C
C
1A
0
0
1
1
0
0
0
1
0
1
0
0
0
1
1
0
0
0
1
0
1
1 1
B 1 0
B
M (G) = B
B 0 1
0 0
0 0
21
I
01
0C
C
0C
C
1A
1
22
1. SOLUCIONS
a
b
b
a
d
a
b
d
e
d
b
e
e
d
b)
Problema 10.
Problema 11.
a) La suma dels elements de la
olumna i-esima
orrespon al nombre de vertexs que son in
idents
amb l'aresta a .
b) La suma dels elements de la la j -esima
orrespon al grau del vertex v .
) Si B B = (
), aleshores
8
si i 6= j i v no es adja
ent a v
< 0;
si i 6= j i v es adja
ent a v
= : 1;
g (v );
si i = j
i
ij
ij
Problema 12.
a) 11.
b) 4.
) 9.
Problema 13.
a) No.
b) S.
) No.
Problema 14.
n
2
23
1. SOLUCIONS
e)
n(n
1)
Problema 17.
0; si i m; j m
0; si i m + 1; j m + 1
:
1; altrament.
Penseu en el graf
omplementari. N'hi ha 70 de no identi
s i nomes 2 llevat
d) Si M (K ) = (a ), aleshores
A
m;n
Problema 18.
d'isomorsmes.
8
<
ij
aij
Problema 19.
b) M (G) + M (G) = J , on J denota la matriu que tots els seus
oe
ients valen 1.
d) Utilitzeu l'apartat
).
A
Problema 20.
b) Utilitzeu el lema de les en
aixades de mans. Tingueu en
ompte tambe que si G es un graf
auto
omplementari, aleshores X
X
g (v ) =
g (v ):
v
Problema 21.
a) Preneu un vertex v del graf G. Distingiu els
asos g (v) 3 i g (v) < 3. Estudieu el segon
as a partir del primer,
onsiderant que passa en el graf
omplementari.
G
Problema 22.
a) S.
Problema 24. Hi ha 660 multigrafs diferents de mida 4 i ordre 5, dels quals 210 son grafs.
Problema 23.
Problema 25.
a)
b)
)
+K =K .
+N =K .
+G =G [G .
Km
m+n
Nm
m+n
G1
Problema 26.
a) No son isomorfs.
b) Si n i n son els ordres dels grafs, i m i m en son les mides, aleshores l'ordre de G [G es
n n , i la seva mida
es n m + n m .
1
2
2
24
1. SOLUCIONS
Problema 27.
a) Fals.
b) Fals.
) Cert.
N'hi ha quatre.
Problema 29. N'hi ha un de simetri
i quatre d'asimetri
s.
Problema 28.
Problema 30.
a) 2 n n .
(
1)
Problema 31.
Problema 32.
Cap
tol 2
Pre
isem el
on
epte de re
orregut entre dos vertexs u i v d'un graf G = (V; A) i els diferents tipus
de re
orreguts que pot haver-hi.
Deni
io. Un u v re
orregut (u v walk ) de longitud l del graf G es una sequen
ia de vertexs
u u : : : u u , amb u = u, u = v i u
u 2 A per a i = 1; 2; : : : l,
es a dir,
ada parell de vertexs
onse
utius son adja
ents. Si u = v direm que es un re
orregut tan
at i si u 6= v direm que es un
re
orregut obert .
Deni
io. Un sendero (trail ) es un re
orregut en el qual no es repeteixen les arestes. Un
am
(path ) es un re
orregut en el qual no es repeteixen els vertexs.
Un vertex v es
onsidera un
am de longitud 0, que s'anomena
am trivial. Observeu que tot
am es un sendero.
Deni
io. Un
ir
uit es un sendero tan
at no trivial. Un
i
le es un
ir
uit v v : : : v v que te
els l vertexs v ; v ; : : : ; v diferents.
Veiem aquests diferents tipus de re
orreguts en l'exemple seguent:
Exemple. Donat el graf G, representat en la gura 2.1, tenim que
adefged
es un a-
re
orregut de longitud 7;
ad
es un a-
am de longitud 2;
ad
bde es un a-e sendero de longitud 5;
adegf
dba es un a-a
ir
uit de longitud 8;
ab
da
es un a-a
i
le de longitud 4.
Si u u : : : u es un
am d'un graf G = (V; A), el subgraf
P = (fu ; u ; : : : ; u g; fu u ; u u ; : : : ; u
u g)
s'anomena graf
am d'ordre n.
Direm que un re
orregut R
onte un re
orregut R0, si R0 es una subsequen
ia de R. En aquest
sentit tenim el resultat seguent:
0
25
26
I DISTANCIES
CAPITOL 2. RECORREGUTS, CONNEXIO
g
b
am.
f
Figura 2.1: Re
orreguts en un graf.
dos vertexs d'un graf
G.
Aleshores, tot
re orregut onte un
i+1
de
vi
vj
n
k
ij
re orreguts de longitud k .
Demostra io.
ij
(k)
(k+1)
k+1
ij
ij
k+1
(k)
(k+1)
rj
ir
ij
r =1
Com que, per hipotesi d'indu
io, a es el nombre de v v re
orreguts de longitud k i
om
que, per deni
io de matriu d'adja
en
ia, a es 1 si v es adja
ent a v i 0, altrament, la suma
anterior
oin
ideix amb el nombre total de re
orreguts de longitud k de v als vertexs adja
ents a
v . D'altra banda, tot v v re
orregut de longitud k +1
onsta d'un re
orregut v v de longitud
k m
es la sequen
ia v v , on v i v son adja
ents. Aix don
s, el nombre de v v re
orreguts de
longitud k + 1 es igual al nombre de re
orreguts de longitud k entre v i els vertexs adja
ents a v
i, per tant, es igual al
oe
ient (i; j ) de la matriu M .
Exemple. Donat el graf G = (V; A), on V = fa; b;
; dg i A = fab; a
; ad; bd;
dg, representat en
la gura 2.2, tenim que
0
0
0
4 5 5 51
3 1 1 21
0 1 1 11
C
C
B
B
B 1 0 0 1 C
C; M = B 1 2 2 1 C; M = B 5 2 2 5 C:
M =B
5 2 2 5 A
1 2 2 1 A
1 0 0 1 A
5 5 5 4
2 1 1 3
1 1 1 0
(k)
ir
rj
k+1
27
Aix, per exemple, hi ha dos b-b re
orreguts de longitud 2 (bab, bdb) i
in
a-b re
orreguts de
longitud 3 (abab, a
ab, adab, a
db, abdb).
a
d
Figura 2.2: Nombre de re
orreguts de longitud xada.
-b
a
28
I DISTANCIES
CAPITOL 2. RECORREGUTS, CONNEXIO
g
h
n
2.2.1
q.
A
ontinua
io detallem un algorisme que serveix per determinar el
omponent
onnex d'un vertex
qualsevol v d'un graf G, per obtenir l'arbre generador de G (aquest
on
epte es deneix a la
pagina 63) i per saber si G es
onnex (aquesta propietat se satisfara si el
omponent
onnex d'un
29
vertex qualsevol de G
onte tots els vertexs del graf). El nom d'aquest algorisme (dfs |depth rst
sear
h| o
er
a en fondaria prioritaria) ens re
orda l'estrategia que utilitza per tal de re
orrer el
graf.
Aquesta estrategia
onsisteix a \explorar una via ns al nal", aixo es, partir d'un vertex v i visitar
un ve seu v i, despres, un ve de v (p.e. v ) i seguidament un ve de v (v ) i
ontinuar d'aquesta
manera ns a arribar a un vertex v tal que no tingui
ap mes ve o tots els seus vens ja hagin estat
visitats. En qualsevol d'aquests dos
asos, per tal de determinar el proper vertex que
al visitar
resseguirem la llista dels visitats en sentit
ontrari (
omen
ant per v )
er
ant un vertex v que
tingui algun ve w en
ara no visitat. w sera el proper vertex per visitar i l'algorisme
ontinuara
explorant la via de w \ns al nal" de la forma des
rita.
1
L'estru tura de dades que resulta es aient per implementar el re orregut usant l'estrategia de la
Entrada:
G
v
lv
aux
aux
aux
aux
aux
fsi
fmentre
falgorisme
=fl
= V lv^
8w 2 lv : w pertany al
omponent
onnex de v^
8x; w : w 2 lv ^ x 2 l ^ adja
ent(w; x) ) w 2 p^
aux
la
<V
laux >
30
I DISTANCIES
CAPITOL 2. RECORREGUTS, CONNEXIO
Re
ordem que < V l > es el subgraf de G indut per V l (vegeu pagina 8).
L'opera
io d'empilar afegeix un element al
apdamunt d'una pila. El darrer element empilat esdeve
el
im de la pila i el primer que s'eliminara .
Exemple. Si apliquem l'algorisme DFS en el graf G = (V; A), representat en la gura 2.5, i prenem
v = a, aleshores obtindrem la taula seg
uent:
aux
aux
aux
fb;
; d; e; f; g g
f
; d; e; f; g g
fd; e; f; g g
fe; f; g g
fe; f; g g
ff; g g
ff; g g
ff; g g
ff; g g
ff; g g
a
ab
ab
ab
d
ab
ab
e
ab
ab
a
x := im(p)
a
i
o
empilar(p; b)
empilar(p; )
empilar(p; d)
desempilar(p)
e
empilar(p; e)
desempilar(p)
desempilar(p)
desempilar(p)
desempilar(p)
lv
la
fa; bg
fa; b;
g
fa; b;
; dg
fa; b;
; dg
fa; b;
; d; eg
fa; b;
; d; eg
fa; b;
; d; eg
fa; b;
; d; eg
fa; b;
; d; eg
fa; b;
; d; eg
fabg
fab; b
g
fab; b
;
dg
fab; b
;
dg
fab; b
;
d;
eg
fab; b
;
d;
eg
fab; b
;
d;
eg
fab; b
;
d;
eg
fab; b
;
d;
eg
fab; b
;
d;
eg
Per tant, el
omponent
onnex C de G que
onte el vertex a es el subgraf indut pel
onjunt de
vertexs lv = fa; b;
; d; eg . Com que aquest
omponent no
onte tots els vertexs del graf, es a dir,
lv 6= V , podem
on
loure que G no
es
onnex.
e
2
b
d
f
Figura 2.5: Exemple d'apli
a
io de l'algorisme DFS.
La
orre
tesa de l'algorisme queda provada pel teorema seguent:
Teorema 2.5. Sigui G = (V; A) un graf i v un vertex de G. El subgraf indut pels vertexs visitats
de
que onte v .
Sigui T el subgraf indut pels vertexs visitats emprant l'algorisme DFS, i sigui C el
omponent
onnex de G que
onte v. Provarem que T = C veient que els respe
tius
onjunts de
vertexs son iguals.
Clarament tot vertex w de T es de C , ja que en
ada pas de l'algorisme DFS els vertexs que es
visiten estan
onne
tats amb el vertex ini
ial v i, per tant, son vertexs del
omponent
onnex C
que
onte v. D'altra banda, si w es un vertex de C , aleshores, per ser C
onnex, existeix un v w
am v = v v : : : v = w de C . Sabem que v es de T ; si, a mes, tot altre vertex v d'aquest
am
es de T , llavors ja tenim que w es un vertex de T . Suposem, don
s, que existeixi un vertex v
que sigui de T i tal que v no ho sigui. Com que per l'algorisme DFS aquest vertex v es en
Demostra
io.
i+1
1 Es
per aquesta
ara
tersti
a que les piles son estru
tures de dades que segueixen una estrategia anomenada
LIFO (last input, rst output ) que vol dir que el darrer element que s'insereix es el primer que s'elimina.
2 El
onjunt la = fab; b
;
d;
eg
es el
onjunt d'arestes d'un arbre generador del
omponent
onnex C .
31
2.3. DISTANCIES
EN UN GRAF
algun moment el \vertex a
tual"(
im de la pila) i
om que per aquest algorisme es visiten, entre
altres, tots els seus vertexs adja
ents, el fet de no in
loure el vertex v signi
a que v no pot
ser adja
ent al vertex v . Pero aixo entra en
ontradi
io amb el fet que v v : : : v v : : : v es un
am.
i+1
i+1
i+1
32
I DISTANCIES
CAPITOL 2. RECORREGUTS, CONNEXIO
j
b
Figura 2.6: Cal
ul del radi i del diametre.
La desigualtat r(G) D(G) es dedueix dire
tament de la deni
io de radi i diametre
ja que
om que el radi es la mnima de les ex
entri
itats i el diametre la maxima d'aquestes, el
radi sempre es mes petit o igual que el diametre.
Veiem ara que D(G) 2r(G). Sigui D(G) = d(u ; v ) i r(G) = e(w). Per la desigualtat triangular
sabem que d(u ; v ) d(u ; w) + d(w; v ). D'altra banda,
om que e(w) es la mes gran de les
distan
ies entre w i els altres vertexs de G, tindrem que
D(G) = d(u ; v ) d(u ; w) + d(w; v ) e(w) + e(w) = 2r(G):
Demostra io.
2.3.1
Algorisme BFS. C
al
ul de dist
an
ies des d'un v
ertex donat
Entrada:
G
V; A
v
G
Sortida: distan
ia
v
algorisme
G; v; distan
ia
es
aux
33
2.3. DISTANCIES
EN UN GRAF
:= fvg;
:= f g;
mentre :buida(
) fer
u := primer(
);
per a
ada vertex w 2 l , w adja
ent a u fer
distan
ia[w := distan
ia[u + 1;
:= inserir(
; w);
l
:= l
fwg;
fper
:= eliminar(
);
laux
V
v
aux
aux
aux
fmentre
falgorisme
aux
aux
aux
a
i
o
f2; 3; 4; 5; 6g
inserir( ,2)
12
f3; 4; 5; 6g
inserir( ,5)
125
f3; 4; 6g
eliminar( )
25
f3; 4; 6g
inserir( ,3)
253
f4; 6g
eliminar( )
53
f4; 6g
inserir( ,4)
534
f6g
eliminar( )
34
f6g
eliminar( )
f6g
inserir( ,6)
46
eliminar( )
eliminar( )
u := primer( )
distan ia
34
I DISTANCIES
CAPITOL 2. RECORREGUTS, CONNEXIO
1
2
3
4
6
Figura 2.7: Exemple d'apli
a
io de l'algorisme BFS.
35
2.4. CONNECTIVITAT
Teorema 2.7. Sigui G = (V; A) un graf
onnex i v un vertex de G. Aleshores, v es un vertex de
tall de G si, i nomes si, existeixen dos vertexs u; w 2 V , diferents entre ells i diferents de v , tals
que tot u w
am
onte v .
Demostra
io.
() Siguin u i w vertexs diferents entre ells i diferents de v tals que tot u w
am
onte v.
Aleshores, u i w no estan
onne
tats en el graf G v i, per tant, el graf G v no es
onnex.
Aix, don
s, v es un vertex de tall de G.
)) Si v es un vertex de tall, aleshores la seva supressio des
onne
ta el graf G en dos o mes
omponents
onnexos. Siguin u i w dos vertexs pertanyents a
omponents
onnexos distints
de G v. Aquests dos vertexs no estan
onne
tats en G v i s que ho estaven en G (G es
onnex). Aixo signi
a que tot u w
am de G
onte v.
Observeu que el graf
omplet K no te vertexs de tall i, en
anvi, el graf
am P te n 2 vertexs
de tall. En el seguent teorema s'enun
ia que el nombre maxim de vertexs de tall que pot tenir un
graf d'ordre n es n 2.
n
vertexs de tall.
N1 )
Demostra
io. Suposem que no fos
ert, es a dir, suposem que existeix un graf G no trivial que te
om a maxim un vertex que no es de tall. Tra
tarem, en primer llo
, el
as en que G sigui
onnex
i
onsiderarem dos vertexs u i v de G tals que D(G) = d(u; v). Com que G te
om a maxim un
vertex que no es de tall, un dels vertexs u o v ha de ser un vertex de tall. Si u es un vertex de
tall, aleshores el graf G u no es
onnex. Prenem un vertex w d'un
omponent
onnex de G u
que no in
logui v. D'aquesta manera sabem que tot w v
am de G
onte el vertex u ja que
w i v no estan
onne
tats en G u. D'aqu es dedueix que d(w; v ) > d(u; v ) = D(G) i aix
o es
impossible per la deni
io de diametre d'un graf. En
as que G no sigui
onnex es pot apli
ar el
mateix raonament a un
omponent
onnex de G.
El paper que tenen els vertexs de tall respe
te al
onjunt de vertexs d'un graf, en el
as de les
arestes, el juguen les arestes pont que tot seguit introdum.
Deni
io. Direm que una aresta a d'un graf G = (V; A) es una aresta pont si el nombre de
omponents
onnexos del graf resultant de suprimir de G l'aresta a es major que el nombre de
omponents
onnexos de G.
Exemple. Donat el graf G, representat en la gura 2.9, tenim que les arestes s i t son arestes
pont de G.
36
I DISTANCIES
CAPITOL 2. RECORREGUTS, CONNEXIO
Quina rela
io hi ha entre els vertexs de tall i les arestes pont? E s fa
il de veure que si a = uv es
una aresta pont d'un graf
onnex G d'ordre major que 2, aleshores u o v es un vertex de tall de G.
D'altra banda, mentre que la supressio d'un vertex de tall d'un graf
onnex des
onne
ta el graf en
dos o mes
omponents
onnexos, la supressio d'una aresta pont des
onne
ta el graf en exa
tament
dos
omponents
onnexos.
A
ontinua
io, donarem una
ara
teritza
io de les arestes pont.
Teorema 2.9. Si G = (V; A) es un graf
onnex i a es una aresta de G, aleshores les seguents
proposi
ions son equivalents:
i)
G.
de
no esta ontinguda en ap i le de
G.
Demostra io.
i) ) ii) Si a = uv es una aresta pont de G aleshores veurem que u i v no poden estar
Finalment, introdum dos parametres que mesuren la
onne
tivitat d'un graf en rela
io amb la
supressio de vertexs i d'arestes.
Deni
io. La vertex-
onne
tivitat d'un graf G = (V; A), denotada per (G), es el mnim nombre
de vertexs la supressio dels quals des
onne
ta el graf G o el redueix al graf trivial. L'aresta
onne
tivitat d'un graf G = (V; A), denotada per (G), es el mnim nombre d'arestes la supressio
de les quals des
onne
ta el graf G o el redueix al graf trivial.
Exemple. Donats els grafs G i G , representats en la gura 2.10, tenim que (G ) = 1, ja que
G
ont
e un vertex de tall, i (G ) = 2. D'altra banda, (G ) = 2 i (G ) = 3.
1
Propietats:
1. La vertex-
onne
tivitat (aresta-
onne
tivitat) d'un graf G es 0 si, i nomes si, G ' N o G no
es un graf
onnex.
2. La vertex-
onne
tivitat d'un graf G es 1 si, i nomes si, G ' K o G
onte un vertex de tall.
3. L'aresta-
onne
tivitat d'un graf G es 1 si, i nomes si, G
onte una aresta pont.
1
37
I DISTANCIA
2.5. CONNEXIO
EN DIGRAFS
G1
G2
Figura 2.10: Exemple de
al
ul de la vertex-
onne
tivitat i de l'aresta-
onne
tivitat.
Com que la supressio de vertexs tambe
omporta la supressio de les arestes que els son in
idents,
es plausible pensar que sigui \tant o mes rapid"des
onne
tar un graf
onnex suprimint vertexs que
arestes. Aixo es justament el que estableix, d'una manera rigorosa, el teorema seguent:
Teorema 2.10 (Desigualtats de Whitney). Si G es un graf, aleshores
Els
on
eptes de re
orregut i els diferents tipus de re
orreguts estudiats per a grafs s'estenen
de manera natural als digrafs. Aix, per exemple, si u i v son dos vertexs d'un digraf G =
(V; A) aleshores un u v re
orregut de longitud l del digraf G es una sequen
ia de vertexs u =
u u : : : u u = v tal que (u
; u ) 2 A per a i = 1; 2; : : : ; l.
Ara be, pel que fa a la no
io de
onnexio,
al dir que es distingeix entre digraf debilment
onnex ,
digraf unilateralment
onnex i digraf fortament
onnex .
Deni
io. Un digraf G = (V; A) es fortament
onnex si per a tot parell de vertexs u i v de G
existeix un u v
am. Un digraf G es unilateralment
onnex si per a tot parell de vertexs u i v
0
38
I DISTANCIES
CAPITOL 2. RECORREGUTS, CONNEXIO
de G existeix o be un u v
am o be un v u
am. Direm que G es debilment
onnex si el graf
subja
ent es
onnex.
Evidentment, si un digraf es fortament
onnex aleshores es debilment
onnex, pero el re
pro
no
es
ert,
om pot veure's en l'exemple seguent:
Exemple. En la gura 2.11 pot veure's que el digraf G es debilment
onnex, G es fortament
onnex i G es unilateralment
onnex.
d
1
G1
b
Figura 2.11: Connexio en digrafs.
G2
G3
Donat un graf
onnex, ens podem preguntar sota quines
ondi
ions existeix una orienta
io de
G tal que el digraf resultant sigui fortament
onnex. Aquest problema apareix, per exemple,
en situa
ions rela
ionades amb el
ontrol de transit on pot interessar assignar als
arrers d'una
determinada xarxa viaria un sentit uni
, de manera que es
ontinu garantint la
omuni
a
io entre
dos punts qualssevol d'aquesta.
E s fa
il veure que una
ondi
io ne
essaria per tal de trobar una orienta
io satisfa
toria, en els
termes anteriorment assenyalats, es que el graf sigui
onnex i no
ontingui arestes pont. Aquesta
ondi
io resulta tambe su
ient, tal
om ens diu el teorema seguent:
Teorema 2.11 (Robbins). Si
G
es un graf, aleshores G admet una orienta
io que dona llo
a
un digraf fortament
onnex si, i nomes si, G es
onnex i no te arestes pont.
(En [2 podeu trobar una demostra
io del teorema de Robbins i en [3 es detalla un algorisme basat
amb l'estrategia DFS que permet trobar una orienta
io adequada).
Per tal de denir el
on
epte de distan
ia en un digraf,
al que aquest sigui fortament
onnex.
Aleshores es deneix la distan
ia d'un vertex u a un vertex v, que es denota per d(u; v),
om la
mnima de les longituds dels u v
amins. D'altra banda, les no
ions d'ex
entri
itat d'un vertex
i les de radi i diametre d'un digraf son analogues a les
orresponents per a grafs. Ara be,
al
remar
ar dos fets:
1. L'apli
a
io
d :V V
! R
(u; v) ! d(u; v)
no es, en general, una metri
a, ja que d(u; v) 6= d(v; u).
2. La rela
io D(G) 2 r(G) no es
erta per a tots els digrafs.
Exemple. En el digraf G representat en la gura 2.11 pot veure's que d(a; d) = 1 i d(d; a) = 3.
2
Problemes
Problema 34. Trobeu en el graf de Petersen un sendero de longitud 5, un
am de longitud 9 i
i
les de longitud 5, 6, 8 i 9.
Problema 35.
m;n
Problema 40.
a) Demostreu que si G = (V; A) es un graf que te ordre n i q
omponents
onnexos, aleshores
n q jAj (n q )(n q + 1)=2
b) Demostreu que si G es un graf d'ordre n i mida m > (n 1)(n 2)=2, aleshores G es
onnex.
Problema 41.
39
40
2. PROBLEMES
m;n
r;s
41
2. PROBLEMES
b) Sigui G = (V; A) un torneig i v un vertex de G amb grau de sortida maxim, es a dir,
g (v ) g (w); 8w 2 V:
Demostreu que si u es un vertex de G diferent de v, aleshores la distan
ia de v a u es mes
petita o igual que 2. Deduu-ne que tot torneig fortament
onnex no trivial te radi 2.
) Sigui G = (V; A) un digraf, i denim sobre V la rela
io seguent:
u v , existeix un u v
am i un v u
am.
Es tra
ta d'una rela
io d'equivalen
ia i, per tant, originara una parti
io de V en les seves
lasses d'equivalen
ia V ; V ; ; V . Sigui S = hV i el subdigraf indut per V . Els subdigrafs
S ; S ; ; S s'anomenen
omponents fortament
onnexos de G.
Sigui G un torneig amb
omponents fortament
onnexos S ; S ; ; S . Designarem
om
a torneig asso
iat a G, el digraf G~ = (V 0; A0 ), tal que existeixi una bije
io entre V 0 i els
omponents fortament
onnexos de G, i dos vertexs u i u de G~ son adja
ents si, i nomes si,
existeix algun vertex de S que sigui adja
ent, en G, a almenys un vertex de S .
i) Demostreu que G~ es un torneig d'ordre p.
ii) Donat el torneig G seguent,
onstruu el seu torneig asso
iat G~.
+
Problema 54.
42
2. SOLUCIONS
Problema 36.
Problema 37.
) E s fa
il.
( Cal denir una rela
io d'equivalen
ia en V , que doni llo
a dues
lasses d'equivalen
ia de
manera que els vertexs d'una mateixa
lasse no siguin adja
ents entre ells. Suggerim la
seguent:
u Ru () tot u
u
am
es de longitud parella.
Problema 39. Te dos
omponents
onnexos.
i
Problema 40.
a) Per a la ta inferior, tingueu en
ompte la rela
io entre l'ordre i la mida d'un graf
onnex.
Per a la ta superior, penseu
om ha de ser G per tal que tingui mida maxima.
b) Utilitzeu l'apartat anterior.
Problema 42.
43
44
2. SOLUCIONS
Problema 46.
a)
b)
)
d)
e)
f)
1.
2.
1.
n
n
2
2.
n.
si n es parell i
1
2
si n es senar.
Problema 52.
a)
b)
)
d)
e)
f)
min (r; s)
1
2
3
3
Problema 53.
.ii)
Cap
tol 3
D
B
46
C
B
A
Figura 3.2: Multigraf que modelitza el problema dels set ponts de Konigsberg.
Les deni
ions que a
ontinua
io donarem per a grafs tambe son apli
ables als multigrafs.
Deni
io. Un sendero euleria en un graf es un sendero obert que
onte totes les arestes del graf.
Un
ir
uit euleria es un
ir
uit que
onte totes les arestes del graf. Si un graf G = (V; A)
onte un
ir
uit euleria aleshores direm que G es un graf euleria .
D'una manera intutiva podem dir que un graf es euleria si pot ser dibuixat en un sol tra
sense
repetir-ne
ap lnia i havent
omen
at i a
abat en un mateix punt.
Exemple. Dels grafs representats en la gura 3.3 tenim que G
onte un sendero euleria xyzrxtyrt,
G
es euleria ja que
onte un
ir
uit euleria abe
f b
def a i G no
onte
ap sendero ni
ir
uit euleria.
2
z
x
f
a
b G
Figura 3.3: Exemple de senderons i
ir
uits eulerians.
G1
G2
Podem observar que si un graf G
onte un
ir
uit euleria C que
omen
a i a
aba en un vertex v,
ada
op que en aquest
ir
uit C arribem a un vertex u 6= v per una determinada aresta, aleshores
sortim del mateix vertex per una altra aresta, ja que es un
ir
uit, i, a mes,
om que C
onte totes
les arestes del graf, tenim que el nombre d'arestes in
idents en
ada vertex u 6= v es un nombre
parell. Pel que fa al vertex v, ini
i i del
ir
uit, al nombre parell d'arestes in
idents amb v que
s'utilitzen
ada
op que hi apareix en una posi
io intermedia de C li hem d'afegir les dues arestes
amb que s'ini
ia i a
aba, respe
tivament, el
ir
uit C . D'altra banda, un graf (multigraf) euleria
ha de ser
onnex o, si no ho es, tots els seus
omponents
onnexos menys un han de ser isomorfs
al graf trivial N , es a dir, si no es tenen en
ompte els vertexs allats, un graf (multigraf) euleria
es
onnex. Aquestes dues
ondi
ions, ser
onnex llevat de vertexs allats i tenir tots els graus dels
vertexs parells, que
om a
abem de justi
ar son ne
essaries per a l'existen
ia de
ir
uits eulerians,
resulten tambe su
ients.
1
Teorema 3.1 (Euler). Un graf (multigraf) G es euleria si, i nomes si,
vertexs allats, i tots els vertexs de G tenen grau parell.
47
Donarem una demostra
io
onstru
tiva de la su
ien
ia de les dues
ondi
ions (ser
onnex llevat de vertexs allats i tenir tots els vertexs de grau parell) per a l'existen
ia d'un
ir
uit
euleria. E s a dir, suposarem que tenim un graf (multigraf) G = (V; A) que es
onnex (si no ho fos
treient-li els vertexs allats ho seria) i que te tots els vertexs de grau parell. Es tra
ta de provar
que aquest graf
onte un
ir
uit euleria donant un pro
ediment per a la seva
onstru
io.
Partim d'un vertex v de G i
onstrum un re
orregut sense repetir
ap aresta. Observem que
ada
op que haurem arribat a un vertex w 6= v haurem utilitzat un nombre senar d'arestes in
idents
amb w i, per tant,
om que el seu grau es parell podrem tornar a sortir de w per una nova aresta.
Com que el nombre d'arestes es nit, el pro
es anterior s'ha d'aturar i ho ha de fer en el mateix
vertex v , ja que en els altres vertexs, si s'hi ha arribat, se n'ha de poder tornar a sortir per una
nova aresta. D'aquesta manera haurem
onstrut un
ir
uit C .
Si totes les arestes del graf estan a C , aleshores ja hem trobat un
ir
uit euleria. En
as
ontrari,
onsiderarem el graf H resultant de suprimir de G totes les arestes del
ir
uit C . Cal dir que el
graf H pot no ser
onnex pero, en
anvi, s que satisfa que tots els seus vertexs tenen grau parell,
ja que per a
ada vertex hem suprimit un nombre parell d'arestes in
idents amb ell i
om que n'hi
havia un nombre parell ens en torna a quedar un altre nombre parell. Prenem un vertex v que
tingui grau positiu en el graf H i que estigui
ontingut en el
ir
uit C . Aquest vertex ha d'existir
ja que en
as
ontrari tindrem que els vertexs de H i els de C estarien des
onne
tats en el graf
G en
ontra de la hip
otesi ini
ial que G era
onnex. Aleshores,
onstrum un re
orregut a partir
de v de forma similar a
om ho hem fet des de v . D'aquesta manera tindrem un
ir
uit C que
podrem inserir en la llista de vertexs de C , justament en la posi
io de v , i aix podrem obtenir un
nou
ir
uit C de longitud major que la de C . Si C
onte totes les arestes del graf, aleshores ja
hem trobat el
ir
uit euleria i, si no, podem repetir el pro
ediment anterior. Com que els
ir
uits
que aix anem
onstruint son de longitud
ada vegada major i la mida del graf G es nita, arribara
un moment en que haurem trobat un
ir
uit que
onte totes les arestes del graf, es a dir, tindrem
un
ir
uit euleria.
La demostra
io anterior serveix per deduir una altra
ara
teritza
io dels grafs eulerians:
Corol.lari 3.2. Un graf (multigraf) G = (V; A)
onnex es euleria si, i nomes si, existeix una
Demostra
io.
en ir uits.
Tambe podem preguntar-nos quan un graf (multigraf) G
onte un sendero euleria. O bviament el
graf haura de ser
onnex, llevat de vertexs allats. Respe
te al grau dels vertexs tindrem que si
u v
es un sendero euleria de G, aleshores el grau de tots els vertexs de G diferents de u i v sera
un nombre parell (raonament analeg a l'emprat pels
ir
uits eulerians) i el grau de u i v sera senar.
Per tant, l'existen
ia d'un sendero euleria requereix que el graf (multigraf) sigui
onnex, llevat de
vertexs allats, i que tingui exa
tament dos vertexs de grau senar. Veurem tot seguit que aquestes
dues
ondi
ions tambe son su
ients.
Corol.lari 3.3. Un graf (multigraf) G
onte un sendero euleria si, i nomes si,
de vertexs allats, i G te exa
tament dos vertexs de grau senar.
Demostra
io. Provem que si G es un graf
onnex que te exa
tament dos vertexs u i v de grau
senar, aleshores G
onte un sendero euleria que uneix pre
isament aquests dos vertexs.
El multigraf G + uv es
onnex i te tots els vertexs de grau parell. Per tant, pel teorema 3.1, G + uv
onte un
ir
uit euleria C . Eliminat d'aquest
ir
uit C l'aresta uv obtenim un u v sendero euleria
en el graf G.
Aix, don
s, el problema dels set ponts de Konigsberg no te solu
io, es a dir, no hi ha
ap passejada
que travessi
ada pont una sola vegada ja que el multigraf que modelitza la situa
io
onte mes de
dos vertexs de grau senar.
48
Algorisme de Hierholzer
Aquest algorisme es fonamenta en el
orol.lari 3.2 i
onsisteix a
onstruir un
ir
uit euleria a partir
de la
on
atena
io de
ir
uits disjunts respe
te de les arestes. En la seva formula
io hem representat
els
ir
uits C : v v : : : v
om a llistes fv ; v ; : : : ; v g.
1
:graf;
:vertex;
:llista de vertexs;
fvar
Gaux := G;
w :=primer vertex(Gaux);
C :=
rear llista();
C := C fwg;
mentre num arestes(Gaux) > 0 fer
w :=vertex grau positiu(Gaux; C );
Caux :=
ir
uit(Gaux; w);
C :=
on
atenar(C; Caux; w);
Gaux
w
Caux; C
fmentre
falgorisme
buit.
d
f
49
Algorisme de Fleury
Es parteix d'un vertex no allat v d'un graf euleria G i es va
onstruint un sendero C de forma que
en
ada pas s'afegeix a C una nova aresta in
ident amb el darrer vertex visitat tenint en
ompte,
sempre que sigui possible, que l'aresta triada no sigui una aresta pont del graf resultant de suprimir
de G les arestes ja emprades anteriorment.
0
:=vertex no aillat(G);
:= fv g;
:= 0;
mentre grau(G; v ) > 0 fer
v
=aresta in
ident no pont(G; v );
G := G fv v
g;
C := C fv
g;
i := i + 1;
v0
C
i
i+1
i+1
i+1
fmentre
falgorisme
Exemple.
50
vi
a
b
d
b
e
d
f
e
0
1
2
3
4
5
6
7
8
9
ai
ab
b
d
db
be
ed
df
fe
e
a
Observa ions
C
a; b
a; b;
a; b;
; d
a; b;
; d; b
a; b;
; d; b; e
a; b;
; d; b; e; d
a; b;
; d; b; e; d; f
a; b;
; d; b; e; d; f; e
a; b;
; d; b; e; d; f; e;
a; b;
; d; b; e; d; f; e;
; a
f g
f g
f
g
f
g
f
g
f
g
f
g
f
g
f
g
f
g
aresta pont
aresta pont
e
Figura 3.5: Exemple d'apli
a
io de l'algorisme de Fleury.
Teorema 3.4. Si G es un graf euleria, aleshores tot sendero de G
onstrut mitjan
ant l'algorisme
de Fleury es un
ir
uit euleria.
Les deni
ions de sendero i
ir
uit euleria en el
as de digrafs son analogues a les donades per als
grafs. Aix mateix, direm que un digraf es euleria si
onte un
ir
uit euleria.
Exemple. Si observem els digrafs G i G , representats en la gura 3.6, podem veure que G es
euleria, ja que
onte un
ir
uit euleria (ef egf he), i que G
onte un sendero euleria (
ab
da).
1
e
f
a G b
G
Figura 3.6: Exemple de senderons i
ir
uits eulerians en digrafs.
1
A
ontinua
io donem una
ara
teritza
io dels digrafs eulerians i dels digrafs que
ontenen senderons
eulerians, respe
tivament.
51
( ) = g (v); 8v 2 V:
g+ v
( ) = g (u) + 1
g+ u
onte un sendero
(v) = g (v) + 1;
+
i per a tots els restants vertexs es satisfa que el seu grau d'entrada
oin
ideix amb el seu grau de
sortida.
Les demostra ions d'aquests dos teoremes son analogues a les que hem detallat per a grafs.
Mentre que en les se
ions anteriors ens preo
upavem de
er
ar en un graf re
orreguts tan
ats que
travessessin totes les arestes una sola vegada, ara ens interessarem a bus
ar re
orreguts tan
ats que
passin per tots els vertexs un sol
op. Aquests re
orreguts s'anomenen
i
les hamiltonians. El nom
de hamiltonia prove del fet que van ser introduts pel matemati
irlandes William Hamilton, qui
l'any 1857 va dissenyar un jo
onsistent a trobar un itinerari seguint les arestes d'un dode
aedre,
els vertexs del qual representaven
iutats del mon, que visites
ada vertex (
iutat) una uni
a vegada
i que
omen
es i a
abes en el mateix vertex. Aquest problema, en termes de grafs, es tradueix en
la
er
a d'un
i
le que passi per tots els vertexs del graf pla asso
iat al dode
aedre. Aquest graf el
teniu representat en la gura 3.7.
hamiltonia
n;n
52
hamiltonians es un dels grans problemes oberts de la teoria de grafs. De fet es
oneixen diverses
ondi
ions su
ients perque un graf sigui hamiltonia, pero
ap no es al mateix temps ne
essaria.
D'altra banda,
al assenyalar que els
on
eptes de graf euleria i de graf hamiltonia son independents,
es a dir, hi ha grafs que son eulerians i hamiltonians, d'altres que nomes satisfan una de les dues
propietats (ser euleria o ser hamiltonia) i n'hi ha d'altres que no son ni eulerians ni hamiltonians.
Exemple. En la gura 3.8 son representats els grafs
onnexos d'ordre i mida mes petits que satisfan
les propietats abans
itades. Aix, G es euleria i hamiltonia, G es euleria i no es hamiltonia, G
es hamiltonia i no es euleria i G no es ni euleria ni hamiltonia.
1
G1
G2
G3
G4
Figura 3.8:
Si un graf G es hamiltonia, aleshores es fa
il veure que es satisfan les propietats seguents:
1. G es
onnex i tots els seus vertexs tenen grau major o igual que 2.
2. La vertex-
onne
tivitat de G es major o igual que 2.
Aquestes dues
ondi
ions, ne
essaries per tal que un graf sigui hamiltonia, no son su
ients,
om
pot
omprovar-se en el graf representat en la gura 3.9.
g
h
d e
i
f
a
Figura 3.9: Exemple bde graf no hamiltonia
A l'hora de
er
ar un
i
le hamiltonia
al tenir en
ompte les observa
ions seguents:
Les arestes in
idents en un vertex de grau igual a 2 han d'apareixer en tot
i
le hamiltonia.
Si estem
onstruint un
i
le hamiltonia, un
op hem visitat un vertex, es a dir, hem entrat
i sortit d'aquest vertex per dues arestes in
idents amb ell, aleshores podem suprimir les
restants arestes que hi son in
idents.
Un
i
le hamiltonia no pot
ontenir un sub
i
le propi , es a dir, un
i
le format per un
onjunt
mes redut de vertexs.
Es pot fer servir la \simetria"del graf per tal de reduir el nombre de situa
ions que
al
onsiderar.
53
El graf representat en la gura 3.9 no
onte
ap
i
le hamiltonia ja que apli
ant les
observa
ions anteriors podem veure que sortint del vertex h no podrem retornar a aquest vertex
havent visitat tots els restants vertexs un sol
op. Aix, si ini
iem el re
orregut per hgab, aleshores
no podrem passar pels vertexs d i e. En
anvi, si
omen
em per hgade, aleshores no visitarem el
vertex b. Les restants situa
ions, per raons de simetria, son totalment analogues.
Ara be, les
onsidera
ions anteriors nomes resulten apli
ables en el
as de tenir un graf d'ordre
i mida petits. I que su
eeix en general? Donat un graf d'ordre n,
omprovar si un determinat
re
orregut tan
at v v : : : v es un
i
le hamiltonia de G es senzill, ja que nomes
al veure que els
vertexs
onse
utius son adja
ents i que tots els vertexs, llevat del primer i de l'ultim, son diferents.
Pero donats n vertexs fv ; v ; : : : ; v g hi ha (n 1)! sequen
ies de n + 1 vertexs que
omen
en i
a
aben en v . Per tant, si n no es petit el pro
ediment
onsistent a anar provant su
essivament si
alguna d'aquestes sequen
ies es un
i
le hamiltonia resulta intra
table
omputa
ionalment a
ausa
del
ost de
omput exponen
ial que
omporta. En el
ontext de la teoria de la
omplexitat el
problema de determinar si un graf es o no hamiltonia es
lassi
a
om un problema NP-
omplet.
Podem dir, d'una manera no rigorosa, que es un problema pel qual no s'ha trobat un algorisme que
el resolgui en temps polinomi
i que, a mes, es sospita que tal algorisme no existeix. Aquesta sospita
rau en el fet que si es trobes tal algorisme aleshores un bon ple
de problemes pels quals tampo
se'n
oneix
ap, malgrat que fa molt de temps que s'estudien, tambe es resoldrien mitjan
ant
algorismes de
ost polinomi
.
El fet que el problema de determinar si un graf es hamiltonia sigui un problema NP-
omplet,
no treu que per a algunes famlies de grafs la
er
a d'un
i
le hamiltonia pugui fer-se mitjan
ant
un algorisme de
ost polinomi
. Aquestes famlies de grafs estan estretament lligades a resultats
teori
s on s'estableixen determinades
ondi
ions su
ients perque un graf sigui hamiltonia. Un
gran nombre d'aquestes
ondi
ions su
ients venen a pre
isar la idea seguent: \Si un graf te un
nombre su
ient d'arestes llavors el graf es hamiltonia". Els resultats que veurem van en aquesta
dire
io i es basen en el lema seguent:
Lema 3.7. Sigui G un graf d'ordre n 3 i siguin u i v dos vertexs no adja
ents de G tals que
g (u) + g (v ) n. Aleshores,
G
es hamiltonia () G + uv es hamiltonia :
s evident que si G es hamiltonia llavors G + uv tambe ho es. Suposem, ara, que
Demostra
io. E
G + uv
ont
e un
i
le hamiltonia C . Si C no
onte l'aresta uv, aleshores C es un
i
le hamiltonia
de G. En
as que C
ontingui l'aresta uv, llavors el re
orregut obtingut de suprimir de C l'aresta
uv
es un u v
am hamiltonia de G. Sigui w : : : w w : : : w aquest
am, on u = w i v = w .
Si provem que hi ha un vertex w adja
ent a u tal que w es adja
ent a v, aleshores tindrem que
el re
orregut
Exemple.
i+1
i+1
w1 wi+1 wi+2 : : : wn wi wi
: : : w1
Teorema 3.8 (Ore). Si G es un graf d'ordre n 3 tal que tot parell de vertexs u i v no adja ents
de
satisfan que
g u
54
=w
w2
w3
:::
wi
wi+1
:::
wn
wn
=v
Figura 3.10:
arestes entre vertexs no adja
ents. Ara be, afegint totes les arestes entre els vertexs no adja
ents
de G s'obte el graf
omplet K i, sent aquest hamiltonia, podem
on
loure que el graf ini
ial G
tambe ho es.
El teorema d'Ore es una generalitza
io del teorema de Dira
que tot seguit enun
iem.
Teorema 3.9 (Dira
). Si G es un graf d'ordre n 3 tal que tot vertex u de G satisfa que
g (u) n=2, aleshores G
es hamiltonia.
El teorema d'Ore i el de Dira
propor
ionen
ondi
ions su
ients per tal que un graf sigui hamiltonia. Ara be, aquestes
ondi
ions no son ne
essaries,
om es posa de manifest en el graf C , que
es hamiltonia pero, en
anvi, no satisfa les
ondi
ions del teorema d'Ore.
n
Les deni
ions de
am i
i
le hamiltonia en un digraf son analogues a les donades per a grafs. De
la mateixa manera, es deneix un digraf hamiltonia
om aquell que
onte un
i
le hamiltonia.
Entre els resultats que propor
ionen
ondi
ions su
ients per a l'existen
ia d'un
i
le hamiltonia
en un digraf hi ha el teorema seguent:
Teorema 3.10 (Meyniel). Sigui G un digraf fortament
onnex d'ordre n tal que per a
ada parell
de vertexs no adja
ents u i v (no existeix l'ar
(u; v ) ni l'ar
(v; u)) es satisfa que
2n 1, on g(x) = g+(x) + g (x). Aleshores, G es hamiltonia.
Aquest i d'altres resultats relatius als digrafs hamiltonians els podeu trobar a [2.
( ) + g(v)
g u
Problemes
Problema 55. Quines de les gures seguents es poden dibuixar sense aixe
ar el llapis del paper
i sense repetir-ne
ap tros?
a)
b)
Problema 56. Si es possible, dibuixeu una lnia
ontnua i tan
ada que talli exa
tament una
vegada
ada segment interior dels re
tangles seguents:
a)
b)
Problema 58.
a) Determineu per a quins valors de r i s el graf bipartit i
omplet K es un graf euleria.
b) Per a quins valors de r i s, K
onte un sendero euleria?
Problema 59. Demostreu que si G es un graf regular que te ordre parell i mida senar, aleshores
G no
es euleria.
Problema 60. Pot tenir un graf euleria una aresta pont? Doneu un exemple d'un graf d'ordre
5 que tingui una aresta pont i un sendero euleria.
Problema 61. E s possible posar en su
essio totes les txes d'un domino de forma que
oin
ideixin les puntua
ions dels extrems en
onta
te i que els dos extrems lliures tinguin la mateixa
puntua
io?
3 Problema 62. Sigui = f0; 1; : : : ; p 1g un alfabet de p smbols. Sabem que es poden formar
p paraules diferents de longitud n sobre .
Una (p; n) sequen
ia de De Bruijn es una paraula a a : : : a sobre tal que per a tota paraula
w de longitud n sobre existeix un u
ni
i satisfent que w = a a : : : a , on els subndexs es
onsideren modul L. La sequen
ia ha de veri
ar que L = p .
r;s
r;s
55
i+1
i+n
56
3. PROBLEMES
Exemple:
2 ;3
Problema 66.
57
3. PROBLEMES
Problema 70.
onse
utius, l i l + 1 , difereixin exa
tament en una posi
io. Per k = 3, feu servir un graf amb
onjunt de vertexs f000; 001; : : : ; 111g per trobar un
odi de Gray per 1; 2 : : : ; 8. Quina rela
io te
aquesta
onstru
io amb el
on
epte de
am hamiltonia?
3 Problema 71. Sigui G un graf.
a) Demostreu que si G es un graf euleria, aleshores el graf lnia de G, L(G), es un graf euleria.
b) Demostreu que si G es euleria, aleshores L(G) es hamiltonia.
) Demostreu que si G es hamiltonia, aleshores L(G) es hamiltonia.
d) Son
erts els re
pro
s dels apartats anteriors?
Problema 72. Digueu quins dels seguents grafs son eulerians i quins son hamiltonians. Doneu,
en
as armatiu, un
ir
uit euleria o un
i
le hamiltonia, segons
orrespongui.
a)
b)
d)
58
3
3. PROBLEMES
Problema 73.
a) Dibuixeu tots els tornejos no identi
s d'ordre 3 i indiqueu quants no son isomorfs.
b) Una propietat important dels torneigs ve donada pel resultat seguent:
Teorema. Tot torneig
onte un
am hamiltonia.
Demostra
io. Emprarem el metode d'indu
io respe
te a l'ordre del torneig. Per n = 2 es
immediat (?).
Suposem-ho
ert per a tot torneig d'ordre n i provem-ho per a tot torneig d'ordre n +1. Sigui
G = (V; A) un torneig d'ordre n +1 i w un v
ertex qualsevol de G. Clarament el digraf G w,
digraf que s'obte a partir de G suprimint el vertex w, es un torneig d'ordre n i, per tant,
apli
ant la hipotesi d'indu
io,
onte un
am hamiltonia u u : : : u . Si wu 2 A o u w 2 A,
llavors tenim que wu u : : : u o u u : : : u w, respe
tivament, es un
am hamiltonia de G.
En
as que wu 62 A i u w 62 A llavors es dedueix (??) que existeix un vertex u ; i < n, tal
que u w 2 A i wu 2 A i per tant u : : : u wu : : : u es un
am hamiltonia de G.
Basant-vos en aquesta demostra
io
onstru
tiva, doneu un algorisme per
er
ar un
am hamiltonia en un torneig. Justiqueu els passos assenyalats amb un (?) i (??), respe
tivament.
) En un
ampionat de basquet, on parti
ipen 5 equips fe ; e ; e ; e ; e g,
ada equip ha jugat
ontra
adas
un dels equips restants una sola vegada. Els resultats dels partits, on no s'han
admes els empats, poden veure's en les entrades de la seguent matriu:
0
0 1 1 1 11
B 1
0 1 1 1C
B
C
1
1 0 1 1C
A=B
B
C;
1
1 1 0 1A
1 1 1 1 0
l'equip e guanya l'equip e
on a = 11 sisi l'equip
e perd davant de l'equip e :
Modelitzeu aquest
ampionat mitjan
ant un digraf torneig i detalleu
om s'apli
a l'algorisme
proposat en l'apartat anterior per
er
ar una ordena
io dels equips, de forma que
ada equip
guanyi tots els que el segueixen. (Per exemple, l'ordena
io e ; e ; e ; e ; e signi
aria que e
guanya a tots, e guanya a tots menys l'e , e guanya l'e i l'e , i nalment e guanya l'e ).
1
i+1
i+1
ij
a)
b)
)
Kn
Wn
Qn
Problema 58.
a)
b)
r;s
2;3
01
00
11
59
10
60
3. SOLUCIONS
Si prenem el
ir
uit 00; 00; 01; 10; 01; 11; 11; 10; 00, obtenim la (2,3) sequen
ia De Bruijn seguent:
00010111.
Problema 63. Les simitarres de Mohammed s que es poden dibuixar d'un sol tra
, ja que el grau
dels vertexs es sempre parell, i per tant el graf es euleria.
Problema 65. El nombre de
i
les hamiltonians de K es (n 1)!
n
Problema 66.
Problema 69.
a) Observeu que per a
ada vertex v de I i per a
ada
i
le C que
onte v, hi ha g(v) 2 arestes
de A que son in
idents amb v i no estan en C .
Problema 70. Cada
odi
orrespon a un
am hamiltonia d'aquest graf.
Problema 71.
Problema 72.
a)
b)
)
d)
Problema 73.
Cap
tol 4
Arbres
En aquest
aptol estudiarem els grafs
onnexos mes simples, els arbres. Aquests grafs, que van ser
introduts per Gustav Kir
hho en uns treballs que va publi
ar l'any 1847 sobre xarxes ele
triques,
son molt importants tant pel paper que juguen en la teoria de grafs
om pel seu gran nombre
d'apli
a
ions, espe
ialment en el
amp de la informati
a.
Apareixen d'una forma natural quan ens plantegem dissenyar una xarxa que
onne
ti n nodes
mitjan
ant el nombre mnim d'enlla
os. El graf G que modelitza aquesta xarxa ha de ser
onnex,
per tal que
ada parell de nodes estiguin
omuni
ats, i, d'altra banda, no ha de tenir
i
les ja que
si en tingues podrem eliminar una aresta
ontinguda en un
i
le i obtenir un nou graf amb menys
arestes, per tant menys enlla
os, que tambe fora
onnex. E s a dir, el graf resultant ha de ser un
arbre. Per exemple, si volem que el seu diametre sigui 2
onsiderarem el graf estrella K .
La importan
ia dels arbres dins la teoria de grafs rau en el fet que representen l'estru
tura mnima
d'un graf
onnex i, aix, de vegades, per provar una
erta propietat primerament es prova pels arbres
i despres es fa en general. Tambe s'utilitzen a l'hora de dissenyar algorismes que re
orren tots els
vertexs del graf amb l'obje
tiu de provar si el graf satisfa una determinada propietat (
onnexio,
planaritat) o per
omptar el nombre d'o
urren
ies d'una determinada estru
tura (vertex de tall,
subgraf
omplet, et
.).
En
ien
ies de la
omputa
io els arbres s'empren en multiples situa
ions: en la representa
io
d'estru
tures de dades jerarquiques, en algorismes de
lassi
a
io i
er
a (arbres de de
isio), en
algorismes d'ordena
io (heapsort ), en la
odi
a
io de dades (
odis de Human), et
.
Aquest
aptol
onsta de dues parts. En la primera part estudiarem les propietats basiques dels
arbres i tambe
onsiderarem els arbres
om a subgrafs generadors d'un graf
onnex. Aixo ultim
ens permetra endinsar-nos en un problema
lassi
d'investiga
io operativa: determinar un arbre
generador d'un graf
onnex i ponderat de pes mnim. En la segona part treballarem amb els arbres
amb arrel. Veurem algunes de les seves apli
a
ions en el
amp de la informati
a.
1;n
61
62
CAPITOL 4. ARBRES
lents:
i)
= (V; A) es un graf d'ordre n, aleshores les seguents proposi ions son equiva-
es un arbre.
iii)
iv)
1.
vi) T es a
li
i te mida n 1.
Demostra
io. La farem veient l'equivalen
ia de la primera asser
io amb totes les altres.
i) , ii) Si T es un arbre, per ser
onnex, entre
ada parell de vertexs existeix almenys un
am que els uneix. Ara be,
om que no
onte
ap
i
le, aquest
am ha de ser uni
ja que si
hi hagues dos
amins C i C que unissin els mateixos vertexs u i v aleshores el re
orregut
C [ C seria tan
at i per tant
ontindria un
i
le. An
alogament, si T satisfa que entre
ada
parell de vertexs existeix un uni
am, T es
onnex i no
onte
i
les, ja que si en
ontingues
hi hauria vertexs d'un mateix
i
le units per mes d'un
am.
v)
63
i) , iii) Si T es un arbre, per deni io T es onnex i no onte i les. Aleshores om que no
hi ha
i
les, tenint en
ompte la
ara
teritza
io de les arestes pont que diu que una aresta es
una aresta pont si no esta
ontinguda en
ap
i
le, podem
on
loure que tota aresta de T es
una aresta pont. D'altra banda, si T es
onnex i tota aresta de T es una aresta pont, podem
deduir que T es un arbre perque ja sabem que es
onnex i a mes no
onte
ap
i
le perque
tota aresta es una aresta pont.
i) , iv) Sigui T un arbre i u i v dos vertexs no adja
ents de T . Provarem que T + uv
onte exa
tament un
i
le. Els vertexs u i v estan
onne
ta
ts en T , perque T es
onnex,
per tant si afegim al
am que els uneix l'aresta uv obtenim un
i
le. Aquest es uni
ja que
sabem que el
am que uneix u i v en l'arbre T es uni
. Re
pro
ament, provarem que si
T
es a
li
i l'addi
io d'una aresta
rea exa
tament un
i
le, aleshores T es un arbre. Per
aixo n'hi ha prou a veure que T es
onnex. Donats dos vertexs u i v de T , si aquests son
adja
ents aleshores la propia aresta uv es un
am. Si no ho son, llavors, per hipotesi, el graf
T + uv
ont
e exa
tament un
i
le. Eliminant d'aquest
i
le l'aresta uv tindrem un uni
am
que uneix aquest parell de vertexs.
i) , v) Provarem que tot arbre d'ordre n es
onnex i te mida n 1. En realitat, el fet de
ser
onnex es deriva dire
tament de la deni
io d'arbre. Demostrarem que T te mida n 1
mitjan
ant el metode d'indu
io respe
te de l'ordre de l'arbre.
Per n = 1 el resultat es trivial.
Suposem-ho
ert per a tot k n i provem-ho per a n + 1. E s a dir, suposem que tot arbre
d'ordre k n te mida k 1 i provem que si tenim un arbre d'ordre n + 1 aleshores la seva
mida es n.
Sigui T un arbre d'ordre n + 1 i sigui e = uv una aresta de T . Com que ja hem provat que
) () ii) podem armar que aquesta aresta es l'uni
am que uneix en T els vertexs u i v
i per tant el graf T e esta format exa
tament per dos
omponents
onnexos T , que
onte
u, i T , que
ont
e v. Cadas
un d'aquests
omponents
onnexos es un arbre ja que es
onnex
i es a
li
, pel fet que es un subgraf de T que tambe ho es. A mes el seu ordre es mes petit
o igual que n i per tant estem en
ondi
ions d'apli
ar la hipotesi d'indu
io, es a dir, la mida
de T es n 1, on n denota l'ordre de T , i la mida de T es n 1. Per tant,
mida de T = mida de T + mida de T + 1 = n 1 + n 1 + 1
= n + n 1 = n + 1 1 = n:
El re
pro
diu que si T es un graf
onnex d'ordre n i mida n 1 aleshores T es un arbre.
Nomes
al provar que si T es un graf
onnex d'ordre n i mida n 1 aleshores T es a
li
.
Per un resultat del
aptol anterior sabem que la mida d'un graf
onnex d'ordre n es mes
gran o igual que n 1. Per tant, si T es
onnex i te mida exa
tament n 1 aleshores T no
onte
ap
i
le, es a dir, es un arbre.
i) , vi) La impli
a
io i) ) vi) es dedueix dire
tament de la deni
io d'arbre i de l'equivalen
ia anterior. L'altra impli
a
io es fa per mitja del metode d'indu
io de forma analoga
de
om s'ha vist l'equivalen
ia anterior.
i
Un arbre generador (spanning tree ) d'un graf G es un subgraf generador de G que a
mes es un arbre.
Deni io.
64
CAPITOL 4. ARBRES
Exemple.
Sigui G = (V; A) un graf
onnex. Si G es un arbre llavors el propi G es un arbre
generador. Si G no es un arbre signi
a que G
onte
i
les. Si anem eliminant su
essivament
arestes que estan
ontingudes en un
i
le del graf que resulta en
ada pas, arribarem a tenir un
subgraf generador T sense
i
les. Cal justi
ar que T es tambe
onnex i per tant un arbre. Si u i v
son dos vertexs de G i w w : : : w , on u = w i v = w , es un u v
am en G, aleshores si alguna
de les arestes del
am no es de T aixo signi
a que estava
ontinguda en un
i
le i per tant podem
substituir-la per les restants arestes del
i
le. Reiterant aquest pro
es per a
ada aresta del
am
obtindrem un u v re
orregut en T .
L'anterior demostra
io es tambe un algorisme que ens propor
iona un arbre generador d'un graf
onnex. D'altres algorismes, basats en l'estrategia de la fondaria prioritaria |algorisme DFS| o
en la de re
er
a per amplada prioritaria |algorisme BFS| ja s'han vist al
aptol 2, el primer
om un test de
onnexio d'un graf general |vegeu la pagina 28 i s.| i el segon per
al
ular les
distan
ies des d'un vertex v qualsevol d'un graf
onnex G a la resta de vertexs del graf. En el
primer dels
asos, el mateix algorisme DFS ens retorna, en la llista la, el
onjunt d'arestes de l'arbre
generador del graf sempre que aquest sigui
onnex . En el segon
as, utilitzarem l'estrategia BFS
per tal de
onstruir un algorisme ad ho
per a la determina
io d'un arbre generador T d'un graf
G
onnex, partint d'un v
ertex v 2 G distingit o ini
ial.
Demostra
io.
4.2.1
= f1; 2; : : : ; ng,
es un vertex de G
Sortida: la es una llista d'arestes d'un arbre generador T del graf G
algorime bfs arbre generador(G; v; la)
var
l
: llista de vertexs ;
:
ua de vertexs ;
v
aux
1 Si no ho
es,
ini
ial v.
la
65
: vertex ;
l
:= V fvg;
:= fv g;
la := fg;
mentre :buida(
) fer
u := primer(
);
per a
ada vertex w 2 l , w adja
ent a u fer
:= inserir(
; w);
la := la fuwg;
l
:= l
fwg;
fper
:= eliminar(
);
u
fvar
aux
aux
aux
aux
fmentre
falgorisme
Exemple. A la gura 4.3 es pot veure un graf
onnex, G, i dos arbres generats des del vertex 1
segons els algorismes df s i bf s arbre generador. En general els arbres generadors obtinguts mitjan
ant aquests dos algorismes son diferents. Una bona propietat dels arbres obtinguts mitjan
ant
l'algorisme BFS es la de preservar les distan
ies des del vertex ini
ial,
om s'enun
ia al teorema
seguent.
2
3
DFS. Entrada G; 1
Graf G
1
4
6
la
1
3
BFS. Entrada G; 1
2
6
3
4
la = f12; 15; 23; 54; 46g
Figura 4.3: Graf i arbres generadors segons les estrategies DFS i BFS.
G = (V; A) partint d'un v
ertex ini
ial
que preserva les distan
ies des de v , es a dir,
L'algorisme bfs arbre generador es, de fet, el mateix que el bfs de la pag. 32, amb
l'uni
a diferen
ia que aquest darrer algorisme
onstrueix el ve
tor distan
ia, que
onte les distan
ies
des del vertex distingit v a tots els altres vertexs del graf, mentre que el primer
onstrueix l'arbre
generador tot afegint a la les mateixes arestes que el bfs re
orre. De la mateixa manera que en
l'invariant de l'algorisme bfs,
I = f8u 2 V l : distan
ia[u = d(v; u)^
8u 2 l ; 8w ve de u t.q. w 2 V l ) w 2
g;
es mantenen les distan
ies a v des dels vertexs que es van re
orrent, tambe es mantindran en
l'algorisme bfs arbre generador.
Els arbres generadors tenen un paper important en molts algorismes de la teoria de grafs on es fan
servir per moure's pel graf per tal de
er
iorar-se de si el graf te o no una determinada propietat o
Demostra io.
aux
aux
aux
66
CAPITOL 4. ARBRES
per
omptar el nombre d'o
urren
ies d'una
erta estru
tura. Malgrat que l'ele
io del pro
ediment
de
er
a per amplada prioritaria (BFS) o del pro
ediment de
er
a per profundiat prioritaria (DFS)
depen de l'analisi de
ada problema
on
ret, en general es pot dir que l'algorisme BFS es preferible
en les situa
ions on es bus
a una
erta optimitza
io.
4.2.2
Si tenim un graf ponderat G = (V; A; w), el pes d'un arbre generador T = (V; A0) de G, que
denotarem per w(T ), es la suma dels pesos de les arestes de T . En aquest
ontext ens podem
preguntar
om podem trobar un arbre generador de pes mnim, es a dir, un arbre generador T
d'un graf
onnex i ponderat G = (V; A; w) tal que
w(T ) = minfw(T )jT
es un arbre generador de Gg:
Aquest problema, que es
oneix amb el nom de problema del
onne
tor mnim , sorgeix, per exemple,
quan es tra
ta de determinar la xarxa de
ost mnim que inter
onne
ti un determinat
onjunt de
nodes. Un dels algorismes
lassi
s que resol aquest problema es l'algorisme de Kruskal :
m
aux
aux
aux
aux
aux
fmentre
falgorisme
en el qual mnim pes no
i
le(l ; l) retorna l'aresta de l amb pes mnim tal que no formi un
i
le amb algun su
onjunt d'aretas de l.
Exemple. Podem veure a la gura 4.4 un graf
onnex i ponderat i l'arbre generat mitjan
ant
l'algorisme de Kruskal.
aux
aux
Teorema 4.4. L'algorisme de Kruskal propor
iona un arbre generador T de pes mnim d'un graf
onnex i ponderat no trivial
G.
Demostra
io. Sigui T el subgraf obtingut mitjan
ant l'algorisme de Kruskal, es a dir, el subgraf
del qual la es la llista de les seves arestes.
i) Provem que T es
onnex i T es un subgraf generador. Siguin u un vertex de T i v un vertex
de G. Com que u i v son tambe vertexs de G i G es
onnex sabem que existeix un u v
am
en G. Si alguna de les arestes del
am no apareix en T aixo es deu al fet que si s'hi hagues
afegit s'hauria
reat en T un
i
le i per tant pot ser substituda per les restants arestes del
i
le amb la qual
osa s'obtindria un u v re
orregut en T . Tenim don
s que tot vertex de
G
es tambe de T i que T es
onnex.
ii) T es a
li
per propia
onstru
io. Per tant, T es un arbre generador de G.
67
6
4
3
4
( ) la
w(la)
f12,13,14,15,23,25,34,45g 34 2 fg
0
f12,13,14,15,23,25,45g
45 3 f34g
2
f12,13,14,15,23,25g
13 3 f34,45g
5
f12,14,15,23,25g
23 5 f34,45,13g
8
f12,14,15,25g
{ { f34,45,13,23g 13
Figura 4.4: Exemple de l'algorisme de Kruskal.
laux
w a
iii) Provem nalment que T es de pes mnim. Sigui A = fa ; a ; : : : ; a g, el
onjunt d'arestes
de T tal
om les ha triades l'algorisme de Kruskal, on n es l'ordre de T . Ho demostrarem per
redu
io a l'absurd, es a dir, suposarem que T no es de pes mnim. Considerem el
onjunt
T de tots els arbres generadors del graf G de pes mnim i es
ollim T 2 T de forma que
sigui un dels que tinguin el maxim nombre d'arestes
omunes amb T . Com que T no esta
en T , es evident que T i T son diferents, i per tant podrem trobar una aresta de T que no
estigui en T . Sigui a , per a algun i entre 1 i n 1, la primera de tals arestes de A i a 62 T .
Construirem a partir de T i de a un nou arbre T 0, tambe generador de G, i demostrarem
que w(T 0 ) = w(T ). Podem veure un esquema d'aquesta demostra
io a la gura 4.5.
1
T0
a0
ai
68
CAPITOL 4. ARBRES
Pero
om que havem pres T de pes mnim, tindrem que w(T ) w(T 0 ), i, per tant, per
(4.1), podem armar que w(a ) w(a ). Pero si w(a ) < w(a ), l'algorisme de Kruskal hauria
es
ollit al pas i-esim, 0l'aresta a en llo
d'es
ollir a . Ha de ser, per
tant, w(a ) = w(a ) i,
onseguentment, w(T ) = w(T ), tal
om volem veure. E s a dir, T 0 2 T ; pero T 0 te en
omu
amb T totes les arestes de T mes l'aresta a , i aixo
ontradiu l'ele
io de T . Per tant, T
estara en el
onjunt T d'arbres generadors de G de pes mnim.
0
Deni
io. Un arbre dirigit T = (V; A) es un digraf asimetri
tal que el graf subja
ent es un arbre.
En
as que hi hagi un vertex r tal que per a tot vertex v existeix un r v
am direm que T es un
arbre amb arrel . A aquest vertex r l'anomenarem arrel .
Exemple. En la gura, 4.6 T es un arbre dirigit sense arrel i T un arbre dirigit amb arrel al
vertex etiquetat amb 4.
1
T1
1
T2
2
69
T20
2
d'una altra manera es la mes gran de les longituds dels r v
amins. Si el nivell de
ada
fulla de T es igual a h(T ) o a h(T ) 1 direm que T es un arbre equilibrat .
L'arbre amb arrel T es m-ari , essent m 2, si el grau de sortida de tot vertex de T es mes
petit o igual que m. En parti
ular si m = 2 direm que tenim un arbre binari . Un arbre
m ari T = (V; A)
es
omplet si 8v 2 V; g (v) = m o g (v) = 0.
Exemple. A la gura 4.8, T es un arbre binari
omplet i equilibrat, T es un arbre ternari
omplet
i no equilibrat i T es un arbre binari ni
omplet ni equilibrat. Els arbres binaris resulten models
+
T1
T2
T3
= n(m m1) + 1 :
70
CAPITOL 4. ARBRES
1
10
2i + 1 vertexs dels
+ 1 son fulles.
Observem, don
s, que el nombre de vertexs interns d'un arbre binari es un menys que el nombre
de fulles. Si pensem que l'arbre modelitza un torneig de tennis per eliminatories, on les fulles
representen els parti
ipants i els vertexs interns, partits, el resultat anterior ens diu que el nombre
total de partits que s'han de jugar per tal de tenir un
ampio es igual al nombre de parti
ipants
menys un. Si ho pensem detingudament podem veure que si en
ada partit queda eliminat un
jugador, aleshores per tal d'arribar a un
ampio
aldra que tots els restants hagin quedat eliminats
previament i per aixo
aldra que s'hagin jugat tants partits
om parti
ipants menys un.
Corol.lari 4.7. Un arbre binari
omplet amb i vertexs interns te un total de
quals
+ 1 n mm 1 1 :
Demostra
io. El fet que l'ordre n sigui major o igual que l'altura h mes un es dedueix del fet que
si l'arbre te altura h, aleshores en
ada nivell k 2 f0; 1; : : : ; hg hi ha almenys un vertex i, per tant,
n h + 1. D'altra banda, el nombre de v
ertexs de nivell k, on 0 k n, es menor o igual que
m i, per tant,
X
m
1:
n
m =
m 1
h+1
h+1
k=0
+1n2
1:
Finalment veurem la rela
io que hi ha entre l'ordre i l'altura d'un arbre m-ari i
omplet i
om
aquesta es
on
reta en
as que l'arbre sigui equilibrat. Per tal d'expressar aquesta rela
io d'una
manera mes simple introduirem la fun
io part entera per sobre :
dxe = minfk 2 Z j k xg;
per exemple: d2017e = 3 i d 2017e = 2.
h
h+1
71
Si l'arbre es
m-ari
log
1) + 1 :
n m
on
= dlog f e;
m
Demostra io.
Pel teorema anterior sabem que si T es un arbre m-ari d'ordre n i altura h, aleshores
m
1;
n
m 1
h+1
d'on dedum
n m
h+1
n(m
1)+1
). Si l'arbre
= dlog ( )e.
Com a apli
a
io d'aquest resultat podem deduir-ne l'ordre mnim de
ompara
ions que
al fer, en
el pitjor dels
asos, per ordenar una llista de n elements. Representant les n! possibles ordena
ions
om les fulles d'un arbre binari,
omplet i equilibrat, el nombre mnim de
ompara
ions
orrespon
a l'altura de l'arbre i per tant es dlog ( )e = O(n log n).
Corol.lari 4.11. Si T es un arbre binari d'ordre n i altura h, aleshores h log
n+1
n+1
2
n!+1
2
Deni
io. Un arbre amb arrel es ordenat si els lls de
ada vertex intern estan ordenats. En
la representa
io gra
a d'un arbre amb arrel ordenat, els lls de
ada vertex intern es suposen
ordenats d'esquerra a dreta.
Hi ha diferents maneres de \re
orrer"de forma exhaustiva els vertexs d'un arbre amb arrel i ordenat.
Els mes emprats son el re
orregut en preordre , el re
orregut en inordre i el re
orregut en postordre .
Deni
io. Sigui T un arbre amb arrel i ordenat. Sigui r l'arrel de T i n l'ordre de T . Denim de
forma re
ursiva els re
orreguts en preordre, inordre i postordre:
72
CAPITOL 4. ARBRES
de l'arrel r, ordenats d'esquerra a dreta, i pels seus des
endents (aquests subdigrafs, que son
tambe arbres amb arrel, s'anomenen subarbres de T .)
{ El re
orregut en preordre de T
omen
a per l'arrel r, segueix pels vertexs de T en
preordre, despres pels vertexs de T en preordre i aix su
essivament ns que passa
pels vertexs de T en preordre.
{ El re
orregut en inordre de T
omen
a pels vertexs de T en inordre, segueix per l'arrel r
i despres pels vertexs de T en inordre, pels vertexs de T en inordre i aix su
essivament
ns que passa pels vertexs de T en inordre.
{ El re
orregut en postordre de T
omen
a pels vertexs de T en postordre, segueix pels
vertexs de T en postordre i aix su
essivament ns que passa pels vertexs de T en
postordre. Finalment passa per l'arrel r.
Exemple. Els diferents re
orreguts de l'arbre de la gura 4.10 son
preordre: 1, 2, 4, 5, 8, 9, 3, 6, 10, 11, 7, 12;
inordre: 4, 2, 8, 5, 9, 1, 10, 6, 11, 3, 12, 7;
postordre: 4, 8, 9, 5, 2, 10, 11, 6, 12, 7, 3, 1.
k
10
11
12
73
"
"
"f
d
+
=
"f +d
b
"f +d
b
a
e
b
"f +d
+a
(b
+a)=(e " f + d)
Figura 4.12: Su
essives piles de l'expressio (a + b
)=(d + e " f ).
=
en las su
essives piles de la gura 4.12. La transforma
io de l'expressio donada en nota
io pola
a
i la seva
orresponent avalua
io son tasques dels
ompiladors. El re
orregut del mateix arbre en
inordre ens dona l'expressio algebrai
a
onven
ional sense parentesis: a + b
=d + e " f (nota
io
inxa ). El re
orregut en postordre dona ab
+def " += (nota
io postxa ), que tambe es podria
avaluar fent servir una pila.
74
4. PROBLEMES
Problemes
Sigui V = fa; b;
; dg. Determineu tots els arbres que tinguin V
om a
onjunt de
vertexs. Quants no son isomorfs?
Problema 75. Quants arbres no isomorfs hi ha d'ordres 5, 6 i 7, respe
tivament?
3 Problema 76. Digueu raonadament si existeix un arbre d'ordre 5 amb dos vertexs de grau 3.
Problema 77. Sigui T un arbre d'ordre
om a mnim 2.
a) Demostreu que T te almenys dos vertexs de grau 1.
b) Quan T es un graf regular?
Problema 78. Direm que un graf es un b os
si tots els seus
omponents
onnexos son arbres.
Aleshores, sigui G = (V; A) un bos
amb k
omponents
onnexos. Determineu,
a) Quina rela
io hi ha entre jV j, jAj i k?
b) Quin es el nombre mnim d'arestes que
al afegir a G per obtenir un arbre?
? Problema 79. Demostreu que si T = (V; A)
es un arbre, aleshores
8v 2 V; v es un vertex de tall () g(v) 2:
Problema 80. Proveu que tot arbre es un graf bipartit. Quins arbres son grafs bipartits
omplets?
?
Problema 81. Proveu que el
entre d'un arbre esta format per un uni
vertex o per dos vertexs
adja
ents.
Problema 82. Sigui T = (V; A) un arbre d'ordre n 2. Digueu, raonadament, quants
amins
diferents i no trivials hi ha a T ?
Problema 83. Sigui V = f1; 2; : : : ; ng, on n > 2, i sigui T un arbre que te V
om a
onjunt
de vertexs. Asso
iem a T una sequen
ia t ; t ; : : : ; t d'elements de V , anomenada sequen
ia de
Prufer, seguint l'algorisme seguent:
Problema 74.
:= 1;
:= T ;
:= f g;
i
T0
s
75
76
4. PROBLEMES
2 fer
:= primer vertex grau 1(T 0);
:=adja
ent
(T 0 ,v );
0
:= T fv g;
:= s ft g;
:= i + 1;
mentre i n
vi
ti
T0
s
i
fmentre
falgorisme
La fun
io primer vertex grau 1(T 0) retorna el vertex de T 0 de numera
io mes baixa possible tal
que tingui grau 1.
La fun
io adja
ent(T 0 ,v ) retorna un vertex qualsevol de T 0 que sigui adja
ent a v .
a) Doneu la sequen
ia de Prufer
orresponent a l'arbre representat en la gura seguent:
i
1
2
3;3
2;s
5
2
7
3
2
6
2
4
1
1
Problema 87. Sigui G = (V; A; w) un graf ponderat. Presentem l'algorisme de Prim , el qual
ens propor
iona un arbre generador de pes (
ost) mnim T = (V 0; A0) d'un graf ponderat i
onnex
G = (V; A; w).
Algorisme .2. (Prim)
Entrada:
Sortida:
G
v
T
2V
77
4. PROBLEMES
algorisme prim(G; T )
V 0 := fv g;
A0 := fg;
mentre V 0 6= V fer
vs
V0
A0
fmentre
falgorisme
La fun
io aresta minim pes (V 0; V ) ens retorna l'aresta vs de pes mnim del graf G entre un vertex
de V 0 i un altre de V V 0 .
a) Apliqueu l'algorisme de Prim per trobar un arbre generador de pes (
ost) mnim del graf
ponderat seguent,
p
prenent
om a vertex ini
ial v, el vertex p, i els pesos de
adas
una de les arestes venen
donats per la taula seguent:
r s t p q
r - 7 9 - 8
s 7 - 2 4 6
t 9 2 - 5 1
p - 4 5 - 3
q 8 6 1 3 b) Proveu que si G = (V; A; w) es un graf ponderat i
onnex, aleshores el graf obtingut mitjan
ant l'algorisme de Prim, T = (V 0 ; A0), es un arbre generador de G.
(Nota: es demostra que l'arbre generador obtingut mitjan
ant l'algorisme de Prim te pes
mnim).
Problema 88. En la taula seguent trobareu els
ostos de les
onnexions fsiques entre 5 ordinadors
fA; B; C; D; E g:
A B C D E
A - 5 2 4 7
B 5 - 2 3 2
C 2 2 - 5 1
D 4 3 5 - 2
E 7 2 1 2 Determineu una xarxa, el maxim d'e
onomi
a possible, que permeti la
omuni
a
io (dire
ta o
indire
ta) entre dos ordinadors qualssevol, fent servir:
a) L'algorisme de Kruskal.
78
4. PROBLEMES
b) L'algorisme de Prim.
Problema 89. En la taula seguent, n (h) es el nombre d'arbres amb arrel no isomorfs d'ordre
5 i altura h. Comproveu els valors de la taula dibuixant el nombre d'exemples ne
essaris en
ada
as.
h 1 2 3 4
n (h) 1 4 3 1
Problema 90. Construu dos arbres amb arrel no isomorfs que tinguin 12 vertexs, 6 dels quals
siguin fulles, i la seva altura sigui igual a 4.
Problema 91. La Copa AFIF es un
ampionat per eliminatories. Quantes rondes son ne
essaries
si hi parti
ipen 4.090 equips i
ap no passa dire
tament mes d'una ronda?
3 Problema 92. El professor de l'assignatura X i els seus estudiants de
ideixen que mentre no
hi hagi
orreu ele
troni
establiran una mena de sistema en
adena per tal de noti
ar-se tots
aquells assumptes d'interes general que puguin sorgir al llarg del
urs (
anvis d'horari, et
.). El
professor tru
ara a tres dels estudiants, previament sele
ionats, i aquests tru
aran a tres mes i
aix su
essivament. Si en total son 130 estudiants, quants,
om a mnim, hauran de tru
ar per
telefon?
3 Problema 93. Per representar un arbre amb arrel binari es pot utilitzar un array A de la manera
seguent:
i) L'arrel es guarda a A[1.
ii) Si A[i guarda el valor d'un vertex de l'arbre, aleshores el valor del seu ll esquerre es guarda
a A[2i i el del seu ll dret a A[2i + 1.
iii) Si el vertex
orresponent no existeix aleshores es guarda, en la posi
io
orresponent, el valor
NULL.
Quina dimensio ha de tenir l'array A per representar qualsevol arbre amb arrel binari d'altura h?
Problema 94. Suposeu que teniu una moneda autenti
a, amb l'etiqueta 0, i altres r monedes
amb etiquetes diferents f1; 2; : : : ; rg indistingibles per la seva aparen
a de la moneda etiquetada
amb 0. Es sospita que una moneda pot ser falsa (mes pesada o mes lleugera que la moneda 0).
Demostreu que es ne
essiten almenys dlog (2r +1)e pesades en una balan
a de dos plats per de
idir
quina moneda, si es que n'hi ha alguna, es falsa i si es mes pesada o mes lleugera. Dissenyeu un
pro
ediment que utilitzi exa
tament aquest nombre de pesades en el
as r = 4.
Problema 95. Quin es el nombre maxim de vertexs interns que pot tenir un arbre 4 ari d'altura
8? I si es tra
ta d'un arbre m ari d'altura h?
3 Problema 96. Sigui T un arbre amb arrel binari i
omplet amb n fulles fl ; l ; : : : ; l g, i sigui d
la longitud del
am de l'arrel a la fulla l (1 i n). Demostreu que
5
n
X
= 1:
i=1
Sigui T un arbre amb arrel binari. Demostreu que si l es el nombre de fulles de
i k es el nombre de vertexs de T amb grau de sortida igual a 2, aleshores l = k + 1.
Problema 98. Donada l'expressio ((x 1) " 3) (y (2 + x=5)),
a) Representeu-la mitjan
ant un arbre amb arrel binari.
Problema 97.
T
4. PROBLEMES
79
80
4. SOLUCIONS
Problema 77.
a) Demostreu-ho per redu
io a l'absurd, tenint en
ompte que tot arbre d'ordre n te mida
n 1.
b) T es regular nomes en el
as n = 2.
Problema 78.
k:
) Demostreu el ontrare pro . Considereu v 2 V tal que g(v) = 1 i demostreu que v no es un
vertex de tall.
( Considereu v; u; w 2 V tals que u i w siguin adja
ents a v. Observeu que l'uni
u w
am
pot ser uvw.
Problema 80. Heu de denir una parti
io en V , V = V [ V , V \ V = ;, de forma que
8u; v 2 V ; i = 1; 2; u no sigui adja
ent a v.
Una altra possibilitat fora
onsiderar la
ara
teritza
io dels grafs bipartits relativa a la longitud
dels
i
les que
onte.
Els uni
s arbres que son bipartits
omplets son K .
Problema 81. Sigui T = (V; A) un arbre i Z (T ) el
entre d'aquest arbre. Considereu T 0 =
T
fv 2 V : g(v) = 1g. Demostreu que Z (T ) = Z (T 0). Aix don
s podreu anar repetint aquest
pro
es de des
ens ns a obtenir que Z (T ) = Z (K ) o Z (T ) = Z (K ).
1
1;m
Problema 83.
a) La sequen
ia es 2; 2; 2; 5; 5; 7.
b) L'arbre
orresponent a la sequen
ia donada es:
81
82
4. SOLUCIONS
5
7
4
Penseu en la rela
io que hi ha entre l'ordre i la mida d'un arbre. Llavors. K te
arbres generadors no identi
s.
Problema 85.
s
2;s
Problema 87.
Problema 91.
rondes.
Modelitzeu tambe aquesta situa
io mitjan
ant un arbre amb arrel, i obtindreu
que,
om a mnim, 43 alumnes hauran de fer alguna tru
ada.
Problema 93. Observeu que l'array A haura de tenir la mateixa dimensio que l'array que s'utilitzes per representar un arbre binari
omplet d'al
ada h.
Problema 95. Un arbre 4 ari d'altura 8 pot tenir
om a molt 4 +4 + : : : +4 vertexs interns.
Similarment, un arbre m ari d'altura h en podra tenir h .
Problema 96. Demostreu-ho per indu
io sobre el nombre de fulles.
Problema 97. Feu servir el metode d'indu
io respe
te a l'ordre de T .
Problema 92.
Problema 98.
+
=
x
83
4. SOLUCIONS
a
b
e
Problema 101.
b
e
d
h
Problema 102.
b) El nivell de
ada fulla representa la longitud de la paraula del
odi
orresponent al
ara
ter
en questio.
) El missatge es ebda.
84
4. SOLUCIONS
Bibliograa
[1 E.K. Biggs, N.L.; Lloyd and R.J. Wilson. Graph Theory 1736-1936. Oxford University Press,
primera edition, 1976.
[2 G. Chartrand and L. Lesniak. Graphs and digraphs. Wadsworth & Brooks, segona edition,
1986.
[3 F. S. Roberts. Applied Combinatori
s. Prenti
e-Hall, primera edition, 1984.
85