-
7/22/2019 Pertemuan 13 Struktur Pohon_NURI_BAG2013 [Compatibility Mode]
1/19
PERTEMUAN 13
POHON (TREE)
-
7/22/2019 Pertemuan 13 Struktur Pohon_NURI_BAG2013 [Compatibility Mode]
2/19
Definisi Pohon
Adalah bentuk khusus dari graf, atau graf tak berarahterhubung yang tidak mengandung sirkuit.
Contoh: bedakan mana yang pohon dan yang bukan pohona. .b a. .b a. .b
c. .d c. .d c. .d
e. .f e. .f e. .f
G1 G2 G3
-
7/22/2019 Pertemuan 13 Struktur Pohon_NURI_BAG2013 [Compatibility Mode]
3/19
Contoh lain: misalkan himpunan V = {a,A,b,B,c,C,d,D} adalahempat pasangan suami-istri tukang gosip, dengan a,b,c dan dpara suami dan A,B,C dan D para istri.Misalkan a mencaritakangosip lewat telpon ke istri A, yang kemudian A menelpon para
istri lainnnya untuk menyebarkan gosip itu, dan setiap istri itumenelpon dan menceritakan gosip kepada suami-suamimasing2, bagaimana bentuk pohonnya?
.graf tidak terhubung yang tidak mengandung sirkuit.
-
7/22/2019 Pertemuan 13 Struktur Pohon_NURI_BAG2013 [Compatibility Mode]
4/19
1.2 Sifat-sifat pohon
Teorema 1.
Misalkan T = (V,E) adalah graf tak-berarah sederhana danjumlah simpulnya n. Maka, semua pernyataan di bawah ini
adalah ekivalen:1. T adalah pohon
2. Setiap pasang simpul di dalam T terhubung dengan lintasan.
3. T terhubung dan memiliki m = n-1 buah sisi.
4. T tidak mengandung sirkuit dan memiliki m = n-1 buah sisi.
5. T tidak mengandung sirkuit dan penambahan satu sisi padagraf akan membuat hanya satu sirkuit.
6. G terhubung dan semua sisinya adalah jembatan (jembatanadalah sisi yang dihapus menyebabkan graf terpecah
menjadi dua komponen)
-
7/22/2019 Pertemuan 13 Struktur Pohon_NURI_BAG2013 [Compatibility Mode]
5/19
1.3. Pohon Rentang
Misalkan G=(V,E) adalah graf tak-berarah terhubung yangbukan pohon, yang berarti di G terdapat beberapa sirkuit. Gdapat diubah menjadi pohon T=(v1,E1) dengan caramemutuskan sirkuit-sirkuit yang ada. Secara berulang-ulang
disebut pohon rentang (spanning tree).Contoh: graf lengkap dengan empat buah pohon rentang.
penerapan pohon rentang misalnya pada pemeliharaan jalanraya. Karena keterbatasan dana pemeliharaan, pemerintahdaerah mempertimbangkan hanya jalan-jalan sesedikitmungkin sehingga ke empat kota masih tetap terhubung satu
sama lain.
-
7/22/2019 Pertemuan 13 Struktur Pohon_NURI_BAG2013 [Compatibility Mode]
6/19
Teorema 2: setiap graf terhubung mempunyai paling sedikitsatu buah pohon rentang.
Dari teorema diatas graf yang tidak mengandung sirkuit adalah
pohon rentang itu sendiri, sedangkan graf yang mengandungsirkuit, pohon rentangnya diperoleh dengan cara memutuskansirkuit yang ada.
Sisi pada pohon rentang disebut cabang(branch) adalah sisi
dari graf semula sedangkan tali-hubung(chord atau link) daripohon adalah sisi yang tidak terdapat di dalam pohon rentang.Himpunan tali-hubung beserta simpul yang bersisiandengannya disebutkomplemen pohon.
Graf G dengan n buah simpul dan m buah sisi, dapat dicarijumlah cabang dan tali-hubung dengan rumus:
jumlah cabang = n-1
jumlah tali-hubung = m-n+1
-
7/22/2019 Pertemuan 13 Struktur Pohon_NURI_BAG2013 [Compatibility Mode]
7/19
Graf tidak terhubung dengan k komponen, m buah sisi dan nbuah simpul
jumlah cabang = n-k
jumlah tali-hubung = m-n+kJumlah cabang pada pohon rentang daribsebuah graf G
disebut rankgraf G dan jumlah tali-hubung G disebut nullity.
rank+nullity= jumlah sisi graf G
1.3.1 Pohon Rentang Minimum (minimum spanning tree)
Jika G adalah graf berbobot, maka bobot pohon rentang
T dari G didefinisikan sebagai jumlah bobot semua sisi di T.Semua pohon rentang di G, pohon rentang yang berbobotminimum dinamakan pohon rentang minimum (minimumspanning tree). Jenis ini mempunyai terapan yang luas.
-
7/22/2019 Pertemuan 13 Struktur Pohon_NURI_BAG2013 [Compatibility Mode]
8/19
Contohnya: Pemerintah akan membangun jalur rel kereta apiyang menghubungkan sejumlah kota. Karena biayanya mahal,pembangunan jalur ini tidak perlu menghubungkan langsung duabuah kota, tetapi cukup membangun jalur kereta seperti pohon
rentang. Karena dalam sebuah graf mungkin saja terdapat lebihdari satu pohon rentang, maka harus dicari pohon rentang yangmempunyai jumlah jarak terpendek, dengan kata lain harusdicari pohon rentang minimum.
a. 45 .a
55 c.25 .d 30 .h 25.c .d 30 .h
b. 40 20 50 .b
5 e. 15 .g 5 40 20
35 10 .e 15 .g
.f
.f 10
-
7/22/2019 Pertemuan 13 Struktur Pohon_NURI_BAG2013 [Compatibility Mode]
9/19
Dua algoritma untuk menyelesaikan pohon rentang minimumyaitu : 1. Algoritma Prim
2. Algoritma Kruskal1. Algoritma Prim
membentuk pohon rentang minimum langkah demilangkah. Setiap langkah kita ambil sisi dari graf G yangmempunyai bobot minimum namun terhubung dengan
Algoritma Primlangkah 1: ambil sisi dari graf G yang berbobot
minimum,masukkan kke dalam Tlangkah 2: pilih sisi (u,v) yang mempunyai bobot minimum
dan bersisian dengan simpul di T, tetapi (u,v) tidakmembentuk sirkuit di T. tambahkan (u,v) ke dalamT
Langkah 3: ulangi langkah 2 sebanyak n-2 kali
-
7/22/2019 Pertemuan 13 Struktur Pohon_NURI_BAG2013 [Compatibility Mode]
10/19
2. Algoritma KruskalSisi-sisi graf diurut terlebih dahulu berdasarkan bobotnyayang meenaik ( dari kecil ke besar). Sisi yang dimasukkanke dalam himpunan T adalah sisi graf G sehingga T adalah
pohon. Pada keadaan awal, sisi-sisi yang sudah diurutberdasarkan bobot membentuk hutan. Masing-masingpohon di hutan hanya berupa satu simpul. Hutan tersebutin m k n h n h n r n n .
Algoritma Kruskal( langkah 0: sisi-sisi dari graf sudah diurut menaikberdasarkan bobotnya dari bobot kecil ke bobot besar)
Langkah 1 : T masih kosongLangkah 2 : Pilih sisi (u,v) dengan bobot minimum yangtidak membentuk sirkuit di T. Tambahkan (u,v)ke dalam T.
Langkah 3 : ulang langkah 2 sebanyak n-1 kali
-
7/22/2019 Pertemuan 13 Struktur Pohon_NURI_BAG2013 [Compatibility Mode]
11/19
1.4 Pohon Berakar
Dalam aplikasi pohon, sering simpul tertentu diperlukansebagai akar (root). Sekali sebuah simpul ditetapkansebagai akar, maka simpul-simpul lainnnya dapat dicapai
dari akar dengan memberi arah pada sisi-sisi pohon yangmengikutinya. Pohon yang satu buah simpulnyadiperlakukan sebagai akar dan sisi-sisinya diberi arahsehin a men adi raf berarah dinamakan ohon berakar
(rooted tree).Akar mempunyai derajat masuk sama dengan nol dansimpul-simpul lainnya berderajat masuk sama dengan satu.
Simpul yang mempunyai derajat keluar sama dengan noldisebut daun atau simpul terminal. Simpul yang mempunyaiderajat keluar tidak sama dengan nol disebut simpul dalamatau simpul cabang. Setiap simpul di pohon dapat dicapai
dari akar dengan sebuah lintasan tunggal (unik)
-
7/22/2019 Pertemuan 13 Struktur Pohon_NURI_BAG2013 [Compatibility Mode]
12/19
Sembarang pohon tak berakar dapat diubah menjadi pohonberakar dengan memilih sebuah simpul sebagai akar. Pemilihansimpul yang berbeda menjadi akar menghasilkan pohon berakar
yang berbeda pula..a .a .e .f
.b .c .d .b .d .g
.e .f .g .c .h
.h .i .j
-
7/22/2019 Pertemuan 13 Struktur Pohon_NURI_BAG2013 [Compatibility Mode]
13/19
.b .e
.a .c .d .d .f
.e .g .h .g .h .b
.f .a .c
-
7/22/2019 Pertemuan 13 Struktur Pohon_NURI_BAG2013 [Compatibility Mode]
14/19
Beberapa terminologi pada pohon
1. Anak (child atau children) dan orangtua (parent)
Misal X simpul pada pohon berakar, simpul Y dikatakananak dari simpul X jika ada sisi yang menghubungkan X
ke Y. dan X disebut orang tua Y2. Lintasan (path)
Lintasan dari simpul v1 ke vk, adalah runtunan simpul v1,,, +
1ik contoh lintasan dari a ke h adalah a, b, e, h denganpanjang lintasan adalah jumlah sisi yang dilalui dalamsuatu lintasan k-1 ada 3
3. Keturunan (descendant) dan leluhur (ancestor)Jika terdapat lintasan dari simpul X ke Y di dalam pohon ,maka X adalah leluhur Y dan Y adalah keturunan X
-
7/22/2019 Pertemuan 13 Struktur Pohon_NURI_BAG2013 [Compatibility Mode]
15/19
4. Saudara kandung (sibling)
Simpul yang berorangtua yang sama adalah saudarasekandung.
5. Upapohon (subtree)
Misalkan X adalah simpul di dalam pohon T. Yangdimaksud dengan upapohon dengan X sebagai
akarnya ialah upagraf T = (V,E) sedemikian sehinggaV mengandung X dan semua keturunannya dan Emengandung sisi-sisi dalam semua lintasan yangberasal dari X.
6. Derajat (degree)
Jumlah upapohon (atau jumlah anak) pada simpultersebut.
-
7/22/2019 Pertemuan 13 Struktur Pohon_NURI_BAG2013 [Compatibility Mode]
16/19
7. Daun (leaf)
Simpul yang berderajat nol (atau tidak mempunyaianak)
8. Simpul Dalam (internal nodes) adalah Simpul yangmempunyai anak.
9. Aras (level) atau tingkat
Akar mempunyai aras = 0, sedangkan aras simpullainnya = 1 + panjang lintasan dari akar ke simpultersebut.
10. Tinggi (height) atau kedalaman (depth)
Aras maksimum dari suatu pohon.
-
7/22/2019 Pertemuan 13 Struktur Pohon_NURI_BAG2013 [Compatibility Mode]
17/19
Jenis Pohon yang lain
1.5 Pohon Terurut adalah pohon berakar yang urutan anakanaknyapenting.
.
cabangnya "e"punyai paling banyak " buah anak. Pohon "ary
dikatakan teratur atau penuh jika setiap si"pul cabangnya
"e"punyai tepat " anak. Jika "#2$ disebut pohon biner %binary
tree&.Ju"lah daun pada pohon "ary teratur " pangkat h$ h tinggi
pohon.
-
7/22/2019 Pertemuan 13 Struktur Pohon_NURI_BAG2013 [Compatibility Mode]
18/19
'ubungan antara ju"lah daun dan si"pul dala" pada pohon "
ary teratur
i # t ( 1$
i # banyaknya si"pul dala"
t # banyaknya si"pul daun
1.) Pohon biner
adalah pohon yang setiap si"pul cabangnya "e"punyai
"aksi"u" 2 buah anak. *nak perta"a disebut anak kiri %left
child& dan anak kedua disebut anak kanan %right child&. Pohon
yang akarnya adalah anak kiri disebut upapohon kiri %left
subtree& dan sebaliknya disebut upapohon kanan %right
subtree&.
-
7/22/2019 Pertemuan 13 Struktur Pohon_NURI_BAG2013 [Compatibility Mode]
19/19
Pohon biner sei"bang adalah pohon yang "e"iliki tinggi
upapohon kiri dan kanan sei"bang. +ibuat dengan
"enyebarkan setengah dari ju"lah si"pul upapohon kiri dan
setengah dari ju"lah si"pul upapohon kanan.
Terapan Pohon ,iner
1. Pohon ekspresi %expression tree&2. Pohon keputusan %decision tree&
3. -ode 'uff"an %Huffman code&
4. -ode Prefiks %Prefix code&Pohon pencarian biner %binary search tree&
,/ +ike"bangkan sendiri