Professional Documents
Culture Documents
Pohon
Pohon
a b a b a b a b
c d c d c d c d
e f e f e f e f
1
Sifat-sifat Pohon
G T1 T2 T3 T4
Setiap graf terhubung mempunyai paling sedikit satu buah
pohon merentang.
2
Graf tak-terhubung dengan k komponen mempunyai k buah
hutan merentang yang disebut hutan merentang (spanning
forest).
Aplikasi Pohon Merentang
(a) (b)
Router
Subnetwork
3
a a
45
55 d d
25 30 25 30
c h c h
b b
40 20 40 20
50
5 15 5 15
g g
e e
35 10 10
f f
Algoritma Prim
Langkah 1: ambil sisi dari graf G yang berbobot minimum,
masukkan ke dalam T.
1 + (n – 2) = n – 1
Algoritma
4
Cari sisi (p,q) dari E yang berbobot terkecil
T {(p,q)}
for i1 to n-2 do
Pilih sisi (u,v) dari E yang bobotnya terkecil namun
bersisian dengan simpul di T
T T {(u,v)}
endfor
Contoh:
1 10 2
50
30 45 40 3
35
4
25
5
20 55
15
1 10 2
1 (1, 2) 10 1 10
3 (3, 6) 15
3
1 10 2
2 (2, 6) 25 25
15
25
6
1 6 10 2
4 (4, 6) 20
3
4
25
20
15
1 10 2
5 (3, 5) 35
45 3
35
4
25
5
20 55 5
15
6
Pohon merentang minimum yang dihasilkan:
1 10 2
45 3
35
4
25
5
20 55
15
Bobot = 10 + 25 + 15 + 20 + 35 = 105
Contoh:
a 3 b 4 c 2 d
4 2 3 6
5 f 4 g 4
e h
5 3 5 4
i 4 j 4 k 2 l
4 2 3 4 2 3 4 2 3
f g h f h f g h
e e e
4 4 4
5 3 4 5 3 4 5 3 4
i j 4 k 2 l i j 4 k 2 l i j k 2 l
6
Bobotnya sama yaitu = 36
Algoritma Kruskal
( Langkah 0: sisi-sisi dari graf sudah diurut menaik berdasarkan
bobotnya – dari bobot kecil ke bobot besar)
Algoritma
( Asumsi: sisi-sisi dari graf sudah diurut menaik
berdasarkan bobotnya – dari bobot kecil ke bobot
besar)
T {}
while jumlah sisi T < n-1 do
Pilih sisi (u,v) dari E yang bobotnya terkecil
if (u,v) tidak membentuk siklus di T then
T T {(u,v)}
endif
endfor
7
Contoh:
1 10 2
50
30 45 40 3
35
4
25
5
20 55
15
Sisi (1,2) (3,6) (4,6) (2,6) (1,4) (3,5) (2,5) (1,5) (2,3) (5,6)
Bobot 10 15 20 25 30 35 40 45 50 55
0 1 2 3 4 5 6
1 (1, 2) 10
1 2
2 (3, 6) 15
1 2 3 4 5
3 (4, 6) 20
1 2 3 5
4
6
5 (1, 4) 30 ditolak
4 (2, 6) 25
1 2 3 5
6 (3, 5) 35
1 2
3
5
4
6
8
Pohon merentang minimum yang dihasilkan:
1 10 2
45 3
35
4
25
5
20 55
15
Bobot = 10 + 25 + 15 + 20 + 35 = 105
Pohon Berakar
Pohon yang satu buah simpulnya diperlakukan sebagai akar dan
sisi-sisinya diberi arah sehingga menjadi graf berarah
dinamakan pohon berakar (rooted tree).
a a
b b
d d
c c
e e
f g f g
9
h i j h i j
(a) (b)
b e
a e f
b d
g d d f
a c
c
h e b
g h g h
f a c
Pohon dan dua buah pohon berakar yang dihasilkan dari pemilihan dua
simpul berbeda sebagaia akar
b
c d
e
f g
k
h i j
l m
10
b, c, dan d adalah anak-anak simpul a,
a adalah orangtua dari anak-anak itu
2. Lintasan (path)
Lintasan dari a ke j adalah a, b, e, j.
Panjang lintasan dari a ke j adalah 3.
b
c d
e
f g
k
h i j
l m
Derajat (degree)
Derajat sebuah simpul adalah jumlah upapohon (atau jumlah
anak) pada simpul tersebut.
Derajat a adalah 3, derajat b adalah 2,
Derajat d adalah satu dan derajat c adalah 0.
Jadi, derajat yang dimaksudkan di sini adalah derajat-keluar.
11
a
b
c d
e
f g
k
h i j
l m
Daun (leaf)
Simpul yang berderajat nol (atau tidak mempunyai anak) disebut
daun. Simpul h, i, j, f, c, l, dan m adalah daun.
a
0
b 1
c d
e 2
f g
k 3
h i j
4
l m
12
Tinggi (height) atau Kedalaman (depth)
Aras maksimum dari suatu pohon disebut tinggi atau kedalaman
pohon tersebut. Pohon di atas mempunyai tinggi 4.
Pohon Terurut
1 1
2 4 3 4 2
3
5 6 7 8 9 8 9 6 5 7
10 10
(a) (b)
Pohon m-ary
Pohon berakar yang setiap simpul cabangnya mempunyai paling
banyak m buah anak disebut pohon m-ary.
Jika m = 2, pohonnnya disebut pohon biner (binary tree.
Pohon m-ary dikatakan teratur atau penuh (full) jika setiap
simpul cabangnya mempunyai tepat m anak.
< sentence>
13
<subject> <verb> <object>
Gambar Pohon parsing dari kalimat A tall boy wears a red hat
14