Professional Documents
Culture Documents
0 1 1 0
1 0 1 1
1 1 0 0
0 1 0 0
0 1 1 0
1 0 1 1
1 1 0 0
0 1 0 0
0 1 1 0
1 0 1 1
1 1 0 0
0 1 0 0
2 1 1 1
1 3 1 0
1 1 2 1
1 0 1 1
C =A B |c
ij
| = |
k
a
ik
b
kj
| vi |c
ij
| = |
k
a
ik
b
kj
|
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Puude esitamine arvuti mlus
A. Naabrusmaatriksina
Nide (ldine meetod kigi graade jaoks)
1
2
3
4
A=
0 1 1 0
1 0 1 1
1 1 0 0
0 1 0 0
0 1 1 0
1 0 1 1
1 1 0 0
0 1 0 0
0 1 1 0
1 0 1 1
1 1 0 0
0 1 0 0
2 1 1 1
1 3 1 0
1 1 2 1
1 0 1 1
C =A B |c
ij
| = |
k
a
ik
b
kj
| vi |c
ij
| = |
k
a
ik
b
kj
|
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Puude esitamine arvuti mlus
B. Servade loendina
Nide
7 8 9 6 3 0 2 6 6
9 9 2 2 0 2 4 1 5
1 2 3 4 5 6 7 8 9
6 0 0 2 6 2 9 9 2
ehk lihtsamalt
6 0 0 2 6 2 9 9 2
Vajadus mlu jrele: (n1),log
2
n|
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Puude esitamine arvuti mlus
D. Prferi koodina
1
Panna kirja (analoogiliselt alluvussuhte esitusega) vhima positiivse mrgendiga
lehega intsidentne serv ning kustutada nii leht kui serv graast;
2
Korrata eelmist punkti, kuni puu kik servad on kustutatud;
3
Kustutada puu esituse esimene rida (teine rida ongi puu Prferi kood
4
Kustutada ka koodi viimane element (kuna see on alati 0)
Nide
Vahetulemus ehk Prferi laiendatud kood:
1 3 4 5 6 7 8 9 2
6 0 2 6 2 9 9 2 0
1
(v
1
) =
2
(v
2
) = m. Olgu T
/
1
= T
1
v
1
ja T
/
2
= T
2
v
2
. Vastavalt Prferi koodi
konstruktsioonile P(T
/
1
) = P(T
/
2
) = [m
2
. . . m
n2
]. Induktsiooni eelduse jrgi T
/
1
= T
/
2
.
Olgu : V
1
v
1
V
2
v
2
nendevaheline isomorsm.
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Prferi koodi hesus (2)
Testuse jtk
Nitame, et kui me tiendavalt deneerime (v
1
) = v
2
, siis on mrgendatud puude
T
1
ja T
2
vaheline isomorsm.
jtab mrgendid paika: (v
1
) = (v
2
).
Tuleb veel nidata, et on puude T
1
ja T
2
vaheline isomorsm, selleks nitame,
et u, u
/
V
1
korral on u ja u
/
naabrid parajasti siis, kui (u) ja (u
/
) on naabrid.
Kui u ,= v
1
ja u
/
,= v
1
, siis jreldub viimane vide asjaolust, et on T
/
1
ja T
/
2
vaheline
isomorsm.
Olgu u =v
1
. Tipud v
1
ja v
2
on lehed. Olgu w
1
V
1
ja w
2
V
2
tippude v
1
ja v
2
ainsad
naabrid. Vastavalt Prferi koodi konstruktsioonile
1
(w
1
) =
2
(w
2
) = m
1
. Kuna on
mrgendatud puude T
/
1
ja T
/
2
vaheline isomorsm, siis (w
1
) = w
2
. Seega on u
/
tipu
u = v
1
naabertipp parajasti siis, kui (u
/
) on tipu (u) = v
2
naabertipp. m.o.t.t.
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Prferi koodi ldisus
Teoreem
Olgu M N, nii et n = [M[ 2 ja M = [m
1
m
2
. . . m
n2
], kus m
1
, . . . , m
n2
M. Siis
leidub n-tipuline mrgendatud puu T = (V, E, ) mrgendite hulgaga M, nii et
P(T) =M.
Testus.
Induktsioon le tippude arvu n.
Baas. n = 2. SiisM = [ ]. Kui M = m
1
, m
2
, siis vtame T-ks puu
m
1
m
2
Samm. Olgu m M vhim selline element, mis ei esine jrjendis M. Olgu
M
/
= M m ja M
/
= [m
2
. . . m
n2
]. Vastavalt induktsiooni eeldusele leidub
mrgendatud puu T
/
= (V
/
, E
/
,
/
) mrgendite hulgaga M
/
, nii et P(T
/
) =M
/
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Prferi koodi ldisus (2)
Testuse jtk
Olgu w V
/
selline, et
/
(w) = m
1
ja
V = V
/
v
E = E
/
(v, w)
=
/
[v m]
ja olgu T = (V, E, ). Siis T on mrgendatud puu mrgendite hulgaga M.
Leiame P(T). Meil on tarvis leida vhima mrgendiga leht puus T. Puu T lehtede
mrgendid on tpselt need M-i elemendid, mis ei kuulu M-i. Vastavalt m-i
denitsioonile on m vhim nende seas. Seega on vastavalt denitsioonile v vhima
mrgendiga leht puus T.
Tipu v naabriks puus T on w, mille mrgend on vastavalt tema denitsioonile m
1
.
Eemaldades puust T tipu v saame puu T
/
mrgenditega hulgast M
/
Seega P(T) = (w) P(T
/
) = [m
1
m
2
. . . m
n2
] =M. m.o.t.t.
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Mrgendatud puu konstrueerimine Prferi koodi jrgi
Meetod tuleneb eelmisest testusest.
Olgu antud M = [m
1
m
2
. . . m
n2
]
1
Iga i 1, . . . , n2 jaoks leiame jrjendile [m
i
. . . m
n2
] vastava vhima lehe
mrgendi l
i
hulgast Ml
1
, . . . , l
i 1
, nii et see erineks elementidest m
i
, . . . , m
n2
.
2
Loome kahetipulise mrgendatud puu mrgenditega hulgast M l
1
, . . . , l
n2
.
3
Iga i 1, . . . , n2 jaoks (kahanevalt):
Lisame puule uue tipu, mrgendame ta l
i
-ga.
hendame selle tipu tipuga, mis on mrgendatud m
i
-ga.
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Nide: puu genereerimine
M = 1, 2, . . . , 10,
kood
7 7 7 4 5 7 4 4
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Nide: puu genereerimine (2)
M = 1, 2, . . . , 10,
Vhima mrgendiga leht: 1
Kood: 7 7 7 4 5 7 4 4
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Nide: puu genereerimine (3)
M = 1, 2, . . . , 10,
Vhima mrgendiga leht: 1 2
Kood: 7 7 7 4 5 7 4 4
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Nide: puu genereerimine (4)
M = 1, 2, . . . , 10,
Vhima mrgendiga leht: 1 2 3
Kood: 7 7 7 4 5 7 4 4
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Nide: puu genereerimine (5)
M = 1, 2, . . . , 10,
Vhima mrgendiga leht: 1 2 3 6
Kood: 7 7 7 4 5 7 4 4
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Nide: puu genereerimine (6)
M = 1, 2, . . . , 10,
Vhima mrgendiga leht: 1 2 3 6 8
Kood: 7 7 7 4 5 7 4 4
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Nide: puu genereerimine (7)
M = 1, 2, . . . , 10,
Vhima mrgendiga leht: 1 2 3 6 8 5
Kood: 7 7 7 4 5 7 4 4
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Nide: puu genereerimine (8)
M = 1, 2, . . . , 10,
Vhima mrgendiga leht: 1 2 3 6 8 5 7
Kood: 7 7 7 4 5 7 4 4
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Nide: puu genereerimine (9)
M = 1, 2, . . . , 10,
Vhima mrgendiga leht: 1 2 3 6 8 5 7 9
Kood: 7 7 7 4 5 7 4 4
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Nide: puu genereerimine (10)
M = 1, 2, . . . , 10,
Vhima mrgendiga leht: 1 2 3 6 8 5 7 9
Kood: 7 7 7 4 5 7 4 4
10 4
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Nide: puu genereerimine (11)
M = 1, 2, . . . , 10,
Vhima mrgendiga leht: 1 2 3 6 8 5 7 9
Kood: 7 7 7 4 5 7 4 4
10 4
9
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Nide: puu genereerimine (12)
M = 1, 2, . . . , 10,
Vhima mrgendiga leht: 1 2 3 6 8 5 7 9
Kood: 7 7 7 4 5 7 4 4
10 4
9
7
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Nide: puu genereerimine (13)
M = 1, 2, . . . , 10,
Vhima mrgendiga leht: 1 2 3 6 8 5 7 9
Kood: 7 7 7 4 5 7 4 4
10 4
9
7 5
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Nide: puu genereerimine (14)
M = 1, 2, . . . , 10,
Vhima mrgendiga leht: 1 2 3 6 8 5 7 9
Kood: 7 7 7 4 5 7 4 4
10 4
9
7 5 8
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Nide: puu genereerimine (15)
M = 1, 2, . . . , 10,
Vhima mrgendiga leht: 1 2 3 6 8 5 7 9
Kood: 7 7 7 4 5 7 4 4
10 4
9
7 5 8
6
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Nide: puu genereerimine (16)
M = 1, 2, . . . , 10,
Vhima mrgendiga leht: 1 2 3 6 8 5 7 9
Kood: 7 7 7 4 5 7 4 4
10 4
9
7 5 8
6
3
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Nide: puu genereerimine (17)
M = 1, 2, . . . , 10,
Vhima mrgendiga leht: 1 2 3 6 8 5 7 9
Kood: 7 7 7 4 5 7 4 4
10 4
9
7 5 8
6
3
2
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Nide: puu genereerimine (18)
M = 1, 2, . . . , 10,
Vhima mrgendiga leht: 1 2 3 6 8 5 7 9
Kood: 7 7 7 4 5 7 4 4
10 4
9
7 5 8
6
3
2 1
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Mrgendatud puude arv
Teoreem 8.3.2 (Cayley teoreem)
n-tipuliste mrgendatud puude arv on n
n2
.
Jeldus Prferi koodi kohta testatud teoreemidest.
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Mrgendamata puud
Teoreem 8.5.1
Mrgendamata n-tipuliste puude arv T
n
rahuldab vrratust
n
n2
n!
T
n
4
n1
Alumine tke tuleneb sellest, et iga n-tipulist puud saab erinevate mrgenditega
mrgendada n! viisil:
lemise tkke saab tuletada juurega puude vimalike planaarkoodide arvust.
n-tipulise juurega puu planaarkood on Dycki keel 2n-theline sna. Niteks puu
planaarkood on sna 1111100100011011010000.
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Mrgendamata puud
Teoreem 8.5.1
Mrgendamata n-tipuliste puude arv T
n
rahuldab vrratust
n
n2
n!
T
n
4
n1
Alumine tke tuleneb sellest, et iga n-tipulist puud saab erinevate mrgenditega
mrgendada n! viisil:
lemise tkke saab tuletada juurega puude vimalike planaarkoodide arvust.
n-tipulise juurega puu planaarkood on Dycki keel 2n-theline sna. Niteks puu
planaarkood on sna 1111100100011011010000.
Jaan Penjam, email: jaan@cs.ioc.ee Diskreetne Matemaatika II: Puude loendamine
Mrgendatud ja mrgendamata puud
Puude esitamine arvuti mlus
Prferi kood
Mrgendamata puude loendamine
Mrgendamata puud
Dycki keel 2n-theliste snade arv vrdub Catalani arvuga
C
n
=
1
n+1
2n
n
1
n+1
2n
n