Anda di halaman 1dari 28

A.

Pohon (Tree)
POHON (TREE)
Defenisi Pohon (Tree) adalah graf terhubung yang tidak mengandung
sirkuit. Karena merupakan graf terhubung maka pada pohon selalu terdapat
path atau jalur yang menghubungkan kedua simpul di dalam pohon.
Pohon (tree) merupakan salah satu bentuk khusus dari struktur suatu
graf. Misalkan A merupakan sebuah himpunan berhingga simpul (vertex)
pada suatu graf G yang terhubung. Untuk setiap pasangan simpul di A dapat
ditentukan suatu lintasan yang menghubungkan pasangan simpul tersebut.
Untuk itu perlu diingat kembali bahwa :

Suatu Graf G disebut terhubung apabila untuk setiap dua simpul dari graf

G selalu terdapat jalur yang menghubungkan kedua simpul tersebut.


Sirkuit atau cycle adalah suatu lintasan tertutup dengan derajat setiap
simpul dua.
Suatu graf terhubung yang setiap pasangan simpulnya hanya dapat

dihubungkan oleh suatu lintasan tertentu, maka graf tersebut dinamakan


pohon (tree). Dengan kata lain, pohon (tree) merupakan graf tak-berarah yang
terhubung dan tidak memiliki sirkuit.
a

Contoh:
Pohon (G1)

pohon (G2)

bukan pohon (G3)

bukan pohon (G4)

Karena defenisi pohon mengacu dari teori graf, maka sebuah pohon dapat
mempunyai hanya sebuah simpul tanpa sebuah sisipun. Dengan kata lain, jika
G=(V,E) adalah pohon, maka V tidak boleh berupa himpunan kosong, namun
E boleh kosong. Pada sebagian literatur, pohon yang dimaksudkan oleh
Defenisi pohon di atas sering juga disebut pohon bebas (free tree) untuk
membedakannya dengan pohon berakar (rooted tree). Pohon berakar akan
dibahas lebih lanjut pada materi berikutnya.
Pohon juga seringkali didefinisikan sebagai graf tak-berarah dengan sifat
bahwa hanya terdapat sebuah lintasan unik antara setiap pasangan simpul.
Tinjau kembali graf G1 di atas. Setiap simpul di G1 terhubung dengan lintasan
tunggal. Sebagai contoh, dari b ke f hanya ada satu lintasan, yaitu b, a, d, f.
demikian juga untuk setiap pasangan simpul manapun di G1
Teorema 1
Jika T pohon, maka untuk setiap dua titik u dan v yang berbeda di T terdapat
tepat satu lintasan (path) yang menghubungkan kedua titik tersebut.
Bukti
Misalkan ada lintasan (path) berbeda yang menghubungkan titik u dan titik v
di T, katakanlah e1 dan e2, dengan e1e2. Maka e1 dan e2 akan
menghubungkan titik u dan titik v, sehingga ada dua lintasan yang terhubung
pada kedua titik tersebut dan membentuk sikel. Berdasarkan definisi, T tidak
memiliki sikel. Dengan demikian, haruslah e1=e2. Hal ini bertentangan
dengan pemisalan bahwa e1e2. Jadi, terbukti bahwa setiap dua titik yang
berbeda di T memiliki tepat satu lintasan yang menghubungkan kedua titik
tersebut.

Teorema 2
Banyaknya titik dari sebuah pohon T sama dengan banyaknya sisi ditambah
satu atau ditulis:
Jika T pohon, maka |V (T)| = |E (T)| +1
Bukti
Kita buktikan teorema di atas dengan induksi pada |V(T)|. Jika pohon T
mempunyai satu titik, jelas banyak sisi T adalah nol. Jadi teorema benar untuk
pohon T dengan satu titik. Asumsikan bahwa pernyataan dalam teorema benar
untuk pohon dengan k titik, artinya jika pohon T mempunyai paling banyak k
titik, maka |V(T)| = |E(T)| + 1. Akan ditunjukkan bahwa jika pohon T
mempunyai k + 1 titik maka |V(T)| = |E(T)| + 1. Misalkan T adalah pohon
dengan k + 1 titik dan l adalah sebuah sisi T. Maka T l memiliki tepat dua
komponen T1 dan T2 , dan masing-masing komponen adalah pohon dengan
titik kurang dari k + 1. Sehingga menurut asumsi, |V(Ti)| = |E(Ti)| + 1 ; i =
1,2.
Selanjutnya |E(T)| = |E(T1)| + |E(T2)| + 1, sehingga
|V(T)| = |V(T1)| + |V(T2)|
= |E(T1)| + 1 + |E(T2)| + 1
= (|E(T1)| + |E(T2)| + 1) + 1
= |E (T)| + 1
Dengan demikian teorema terbukti.
Teorema 3
a. Bila suatu sisi dihapus dari pohon (dan titiknya tetap), maka diperoleh
graph yang tidak terhubung, dan karenanya graph itu bukan pohon.

b. Bila sebuah sisi ditambahkan pada pohon (tanpa menambah titik baru),
diperoleh graph yang memiliki sikel, dan karena itu graph tersebut bukan
pohon.
Bukti
Jika sebuah sisi ditambahkan atau dihapuskan dari pohon, graph baru yang
diperoleh tidak lagi merupakan pohon, berdasarkan teorema 2. Karena
penghapusan sebuah sisi menjadikan graph itu tidak terhubung, dan
penambahan sisi membentuk sikel, maka teorema terbukti.
Hutan (forest) merupakan kumpulan pohon yang saling lepas. Dengan kata
lain, hutan merupakan graf tidak terhubung yang tidak mengandung sirkuit.
Setiap komponen di dalam graf terhubung tersebut adalah pohon. Dengan
kata lain kita dapat katakana (forest) adalah
- kumpulan pohon yang saling lepas, atau
- graf tidak terhubung yang tidak mengandung sirkuit. Setiap komponen
di dalam graf terhubung tersebut adalah pohon.

Pada gambar berikut adalah hutan yang terdiri dari 3 buah pohon

B. Sifat-sifat Pohon
Misalkan G = (V, E) adalah graf tak-berarah sederhana dan jumlah simpulnya
n. Maka, semua pernyataan di bawah ini adalah ekivalen:
1. G adalah pohon.
2. Setiap pasang simpul di dalam G terhubung dengan lintasan tunggal.
3. G terhubung dan memiliki m = n 1 buah sisi.
4. G tidak mengandung sirkuit dan memiliki m = n 1 buah sisi.
5. G tidak mengandung sirkuit dan penambahan satu sisi pada graf akan
membuat hanya satu sirkuit.
6. G terhubung dan semua sisinya adalah jembatan. (jembatan adalah sisi
yang bila dihapus menyebabkan graf terpecah menjadi dua komponen)

C. Pewarnaan Pohon
Dalam pewarnaan pohon, dua buah warna sudah cukup mewarnai simpulsimpul dalam pohon sedemikian sehingga tidak ada dua buah simpul
bertetangga mempunyai warna sama
Pewarnaan pada pohon T dilakukan dengan cara berikut:
1. Petakan warna pertama pada sembarang simpul.
2. Petakan warna kedua pada simpul-simpul yang bertetangga dengan simpul
pertama tadi.
3. Petakan warna pertama ke semua simpul yang bertetangga dengan simpulsimpul yang telah diwarnai.
Sebagai contoh tinjau graf G1. Simpul-simpul pada graf G1 akan diberi warna
dengan warna kuning dan biru. Simpul a dipilih pertama kali untuk diberi
warna kuning. Kemudian simpul-simpul tetangga a, yaitu b dan d diberi warna
biru. Selanjutnya simpu-simpul yang bertetangga dengan d yaitu c, e dan f
diberi warna kuning. Jadi simpul yang berwarna kuning yaitu a, c, e dan f.
Sedangkan simpul yang berwarna biru yaitu b dan d.

D. Pohon Merentang (spanning tree)


Definisi Misalkan G adalah sebuah graph. Sebuah pohon di G yang memuat
semua titik G disebut pohon rentang (spanning tree) dari G.
Contoh
Misalkan kita mempunyai graph G seperti pada gambar 4.6 di bawah ini.
Terdapat 3 pohon rentang dari graph G, yaitu graph A, B, dan C. Tampak jelas
bahwa graph A, B, dan C masing-masing memuat semua simpul dari graph G
serta mengandung sisi-sisi dari G demikian sehingga tidak terbentuk sikel.

Teorema 6
Graph G terhubung jika dan hanya jika G memuat pohon rentang.
Bukti
Jika graph G memuat pohon rentang, jelas G terhubung. Kita buktikan
konvers pernyataan ini dengan induksi pada |E(G)|. Jika G terhubung dan |
E(G)| = 0, maka G = K1, sehingga jelas G memuat pohon rentang.
Asumsikan: setiap graph terhubung dengan k + 1 sisi, maka G memuat pohon
rentang.
Pandang sebuah graph terhubung G dengan k + 1 sisi. Jika G tidak memuat
sikel, maka G sebuah pohon rentang. Jika G memuat sikel, dan misalkan e
adalah sebuah sisi dari sikel di G, maka graph G1 = G - e terhubung dengan k
sisi. Sehingga berdasarkan asumsi, G1 memuat pohon rentang. Sebut T,
pohon rentang di G1. Jelas, T adalah juga pohon rentang dari G. Teorema
terbukti.

Sebuah graph terhubung mungkin memuat lebih dari satu pohon rentang,
seperti terlihat pada Gambar. Graph G memuat pohon rentang T1, T2, dan T3.

Jadi, pohon merentang:

Pohon merentang dari graf terhubung adalah subgraf merentang yang


berupa pohon.

Pohon merentang diperoleh dengan memutus sirkuit di dalam graf.

T1

T2

T3

T4

Setiap graf terhubung mempunyai paling sedikit satu buah pohon


merentang.

Graf tak-terhubung dengan k komponen mempunyai k buah hutan


merentang yang disebut hutan merentang (spanning forest).
Pohon Rentang Minimum

Graf terhubung-berbobot mungkin mempunyai lebih dari 1 pohon merentang

Pohon rentang yang berbobot minimum dinamakan pohon merentang


minimum (minimum spanning tree)

Dalam kehidupan nyata, salah satu contoh aplikasi spanning tree adalah
menentukan rangkaian jalan dengan jarak total seminimum mungkin yang
menghubungkan semua kota sehingga setiap kota tetap terhubung satu sama
lain.
Dalam menentukan suatu minimum spanning tree dari suatu graf terhubung,
kita dapat menentukannya dengan mengunakan dua cara yaitu algoritma Prim
dan algoritma Kruskal.
Algoritma Prim
Langkah 1: ambil sisi dari graf G yang berbobot minimum, masukkan ke dalam T
Langkah 2: pilih sisi (u, v) yang mempunyai bobot minimum dan bersisian
dengan simpul di T, tetapi (u, v) tidak membentuk sirkuit di T.
Masukkan (u, v) ke dalam T
Langkah 3: ulangi langkah 2

10

30

45
4

50

40
25
55

20

35

5
15

Contoh:

Langkah

Sisi

Bobot

Pohon merentang minimum yang dihasilkan:

Pohon rentang

10
45

35

25

55

20

15

Pohon

merentang

minimum

yang

dihasilkan:

Bobot = 10 + 25 + 15 + 20 + 35 = 105

Algoritma Kruskal
( Langkah 0: sisi-sisi dari graf sudah diurut menaik berdasarkan bobotnya dari
bobot kecil ke bobot besar)
Langkah 1: T masih kosong
Langkah 2: pilih sisi (u, v) dengan bobot minimum yang tidak membentuk sirkuit
di T. Tambahkan (u, v) ke dalam T.
Langkah 3: ulangi langkah 2

10

30

45
4

50

40
25
55

20

35

5
15

Contoh:

Sisi-sisi diurut menaik:

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

Langkah

Sisi
4

Bobot

(2, 6)

Hutan merentang

25

(1, 2)

10

(3, 6)

15

6
3

(4, 6)

20

4
6

(1, 4)

30

(3, 5)

35

ditolak

2
5

4
6

10
45

35
25
55

20

5
15

Pohon

merentang

minimum

yang

dihasilkan:

Bobot = 10 + 25 + 15 + 20 + 35 = 105

E. Pohon Berakar
Pada kebanyakan aplikasi pohon, simpul tertentu diperlakukan sebagai akar
(root). Sekali sebuah simpul ditetapkan sebagai akar, maka simpul-simpul lainnya
dapat dicapai dari akar dengan memberi arah pada sisi-sisi pohon yang
mengikutinya.
Definisi:

Pohon yang sebuah simpulnya diperlakukan sebagai akar dan sisi-sisinya


diberi arah menjauh dari akar dinamakan pohon berakar (rooted tree).
Akar mempunyai derajat-masuk sama dengan nol dan simpul-simpul
lainnya derajat-masuk sama dengan satu. Simpul yang mempunyai derajat-keluar
sama dengan nol disebut daun atau simpul terminal. Simpul yang mempunyai
derajat-keluar tidak sama dengan nol disebut simpul dalam atau simpul cabang.
Setiap simpul di pohon dapat dicapai dari akar dengan sebuah lintasan tunggal
(unik). Gambar 9.9(a) adalah contoh pohon berakar dengan

adalah simpul

akarnya. Sebagai konvensi, arah sisi di dalam pohon tidak perlu digambar, karena
setiap simpul di dalam pohon berakar selalu dari atas ke bawah. Gambar 9.9(b)
menunjukkan hal ini

Gambar 9.9 (a) pohon berakar, (b) sebagai konvensi, arah panah pada sisi dapat
dibuang.
Sembarang pohon tak-berakar dapat diubah menjadi pohon berakar dengan
memilih sebuah simpul sebagai akar. Pemilihan simpul yang berbeda menjadi
akar

menghasilkan

pohon

berakar

yang

berbeda

pula.

Gambar

9.10

memperlihatkan dua pohon akar yang berbeda dari pengubahan sebuah pohon takberakar. Pohon berakar pertama memilih
kedua memilih e

sebagai akar.

b sebagai akar sedangkan pohon akar

Gambar 9.10 (kiri) Pohon dan (kanan) dua buah pohon berakar yang dihasilkan
dari pemilihan dua simpul berbeda sebagai akar.

F. Terminologi Pada Pohon Berakar


Keseluruhan sisa bab ini akan menggunakan istilah pohon berakar untuk
membedakannya dengan pohon tidak berakar (free tree).
Sebagaimana pada graf, kita akan sering menggunakan terminologi yang
berhubungan dengan pohon. Di bawah ini didaftarkan beberapa terminologi yang
penting pada pohon berakar. Untuk ilustrasi, pohon pada Gambar 9.12 dipakai
sebagai untuk menjelaskan terminologi yang dimaksudkan. Simpul-simpul pada
pohon diberi label untuk mengacu simpul mana yang dimaksudkan. Kebanyakan
terminologi pohon yang ditulis di bawah ini diadopsi dari terminologi botani dan
silsilah keluarga.
Anak (child atau children) dan Orangtua (parent)
Xx

Misalkan
y

adalah sebuah simpul di dalam pohon berakar. Simpul

dikatakan anak simpul

hal demikian,

jika ada sisi dari simpul

disebut orangtua (parent)

ke

y . Dalam

y . Pada Gambar 9.11,

b ,

c , dan

a , dan

adalah anak-anak simpul


e

anak-anak itu.

dan

orangtua dari

orangtua dari

g . Simpul

dan

b , dan

adalah

adalah anak simpul

d , dan

adalah

i ,

adalah anak-anak simpul

f .

g
h ,

adalah orang tua dari

j ,

l , dan

tidak mempunyai

anak

Gambar 9.11 Pohon berakar yang digunakan untuk menjelaskan terminologi


pohon.

Lintasan (path)
Lintasan dari simpul
v2

, ...,

vk

v1

ke simpul

sedemikian sehingga

vi

vk

adalah runtutan simpul

adalah orang tua dari

1 i<k . Dari pohon pada Gambar 9.11, lintasan dari

b ,

e ,

a ke

v i +1

v1

untuk

adalah a

j . Panjang lintasan adalah jumlah sisi yang dilalui dalam suatu

lintasan, yaitu k 1 . Panjang lintasan dari a ke

adalah 3.

Keturunan (descendant) dan Leluhur (ancestor)


x

Jika terdapat lintasan dari simpul


x

maka
simpul

ke simpul

y , dan

adalah leluhur dari simpul

di dalam pohon,

adalah keturunan dari

x . Pada gambar 9.11, b adalah leluhur simpul

h , dan dengan

demikian h adalah keturunan dari b .

Saudara Kandung (sibling)


Sampul yang berorangtua sama adalah saudara kandung

e . Tetapi,

bukan saudara kandung e , karena orangtua mereka berbeda.

Upa Pohon (subtree)


Misalkan

adalah simpul di dalam pohon


x

upapohon dengan
sehingga

V'

T . Yang dimaksud dengan

sebagai akarnya ialah upagraf

mengandung

T ' = ( V ' , E' )

dan semua keturunannya dan

mengandung sisi-sisi dalam semua lintasan yang berasal dari


contoh,
'

T ' = ( V ' , E' )

V ={ b , e , f , h ,i , j }

sedemikian
E'

x . Sebagai

adalah upapohon dari pohon pada gambar 9.12 dengan


dan

'
E = {( b , e ) , ( b , f ) , ( e , h ) , ( e , i ) , ( e , j ) }

simpl akarnya. Terdapat banyak upapohon

dan

adalah

T . Dengan pengertian di atas, jika

adalah simpul, maka akar tiap-tiap upapohon dari

adalah orangtua setiap akar pohon.

disebut anak, dan

'
'
'
Gambar 9.12 Upapohon T = ( V , E ) dengan b sebagai akarnya.

Derajat (degree)
Ada perbedaan definisi derajat pada pohon berakar dengan definisi derajat
pada graf (termasuk pohon tidak berakar). Derajat sebuah simpul pada pohon
berakar adalah jumlah upa pohon (atau jumlah anak) pada simpul tersebut. Pada
gambar 9.11, derajat a adalah 3, derajat b adalah 2, derajat d adalah 1 dan derajat c
adalah 0. Jadi, derajat yang dimaksudkan di sini adalah derajat-keluar.
Derajat maksimum dari sebuah simpul merupakan derajat pohon itu sendiri.
Pohon pada Gambar 9.11 berderajat 3, karena derajat tertinggi dari seluruh
simpulnya adalah 3.
Daun (leaf)
Simpul yang berderajat nol (atau tidak mempunyai anak) disebut daun.
Simpul h, i, j, f, c, l, dan m adalah daun.
Simpul Dalam (internal nodes)

Simpul yang mempunyai anak disebut simpul dalam. Simpul d, e, g, dan k pada
gambar 9.11 adalah simpul dalam.

Aras (level) atau Tingkat


Akar mempunyai aras = 0, sedangkan aras simpul lainnya = 1 + panjang lintasan
dari akar ke simpul tersebut. Beberapa literature memulai nomor aras dari 0,
literature lainnya dari 1. Sebagai konvensi, kita memulai penomoran aras dari 0.
Lihat gambar 9.13

Gambar 9.13 Pendefinisian aras tiap simpul


Tinggi ( height) atau kedalaman (depth)
Aras maksimum dari suatu pohon disebut tinggi atau kedalaman pohon
tersebut. Atau, dapat juga dikatakan, tinggi pohon adalah panjangmaksimum
lintasan dari akar ke daun. Pohon pada gambar 9.13 mempunyai tinggi 4.

G. Pohon Berakar Terurut

Definisi 9.3. pohon berakar yang urutan anak-anak panahnya penting


disebut pohon terurut (ordered tree)
Pada pohon terurut, urutan anak-anak dari simpul dalaam dispesifikasi dari
kiri ke kanan. Sebagi contoh, dua buah pohon pada gambar 9.14 adalah pohon
yang berakar yang sama, tetapi sebagai pohon terurut, keduanya berbeda.
Misalnya urutan anak-anak dari simpul 1 pada gambar 9.14(a) adalah 2, 3, 4,
sedangkan urutan anak-anak dari simpul 1 pada gambar 9.14(b) adalah 4, 3, 2.
Perbedaan ini menjadi penting bila kita mempresentasikan pohon dalam computer,
karena penelusuran dua buah pohon terurut yang bereda akan menghasilkan
urutan simpul yang berbeda pula. Jika pohon berakar terurut pada simpul x yang
mempunyai p buah upa pohon, kita akan mengacunya sebagai upapohon pertama,
upa pohon kedua, , upa pohon ke-p.

3
6
10

(a
)

4
8

9 6 5
(b
)

10

Gambar 9.14 Dua buah pohon terurut yang berbeda.


Sistem yang universal dalam pengalamatan simpul-simpul pada pohon
terurut adalah dengan emberi omor setiap simpulnyaseperti penomoran bab
(beserta upa babnya)di dalam sebuah buku. Simpul akar diberi nomor 0, simpul
lain yang segera mengikuti akar diberi nomor 1, 2, 3, dan seterusnya. Anak-anak
simpul 1 diberi nomor 1.1, 1.2, ; anak-anak simpul 2 diberi nomor 2.1, 2.2, ;

demikian seterusnya (Gambar 9.15). semua penomoran dimulai dengaan aturan


dari kiri ke kanan.

Gambar 9.15 Sistem pengalamatan universal pada pohon terurut.

h. Pohon n-ary (ener)


Definisi :
Pohon n-ary adalah pohon berakar yang setiap simpul cabangnya
mempunyai paling banyak buah anak.
Jika n=2, pohon tersebut disebut pohon biner. Pohon n-ary dikatakan pohon
penuh jika setiap simpul cabangnya mempunyai tepat n buah anak.
Pohon n-ary banyak digunakan di berbagai bidang ilmu maupun dalam
kehidupan sehari-hari. Dalam terapannya, pohon n-ary digunakan sebagai model
yang merepresentasikan suatu struktur. Dua contoh penggunaaan pohon n-ary
dikemukakan di bawah ini, yaitu penurunan kalimat (dalam bidang bahasa) dan
direktori arsip di dalam komputer. Contoh penggunaan pohon

n-ary lainnya

adalah struktur organisasi, silsilah keluarga (dalam bidang genetika), struktur bab
atau daftar isi di dalam buku, bagan pertandingan antara beberapa tim sepak bola
dan sebagainya.
Contoh :

Pohon n-ary digunakan untuk merepresentasikan struktur kalimat dalam


bahasa alam (natural language) maupun dalam bahasa pemrograman. Pohon
penurunan kalimat disebut pohon parsing. Gambar 9.16 memperlihatkan cara
penurunan kalimat dalam bahasa inggris yang berbunyi
A tall boy wears a red hat
Akar mneyatakan kalimat (sentence), daun menyatakan setiap kata-kata
yang menyusun kalimat, sedangkan simpul menyatakan cara pembagian kalimat
menjadi unsur-unsur pembentuknya. Sebuah kalimat (sentence) dalam bahasa
inggris disusun oleh subject, verb, dan object. Subject dapat terdiri dari sebuah
article dan noun phrase. Seb noun phrase dapat terdiri dari adjective dan noun.
Begitu juga object dapat terdiri dari sebuah article dan noun phrase.
(sentence)

(subject)

(article)

(verb)

(object)

(noun phrase) (wears) (article)

(adjective)
Tall

(noun)

(noun phrase)

(adjective)

Boy

(noun)

Red Hat

Gambar 9.16 Pohon parsing dari kalimat A tall boy wears a red hat"
Contoh 9.6
Dalam sistem pengarsipan komputer (computer file system) arsip-arsip di
dalam media penyimpanan sekunder (seperti floppy disk, compact disk, hard disk)
disusun dalam bentuk direktori. Suatudirektori dapat mengandung beberapa
direktori. Struktur direktori dimodelkan dalam pohon n-ary. Di sini akar
menyatakan sistem arsip keseluruhan, simpul dalam menyatakan upa direktori dan
daun menyatakan arsip atau direktori kosong. Gambar 9.17 memperlihatkan
struktur direktori dalam platform sistem operasi windows.

C
My document

Program files

Windows

My
My Proposal Borland Norton Webshot Winzip Cookies
Picture
Music
Gambar 9.17 Struktur direktori arsip dalam sistem operasi windows
Jumlah Daun Pada Pohon N-Ary Penuh
Pohon n-ary penuh adalah pohon yang setiap simpulnya tepat mempunyai n
buah anak. Pada pohon n ary penuh dengan tingkat h, jumlah daun adalah nh.
Perhatikan bahwa jika T bukan pohon n-ary penuh maka jumlah daun n h.
Gambar 9.18 adalah pohon 3-ary penuh dengan jumlah daun = 32= 9

Gambar 9.18 Pohon 3-ary penuh dengan jumlah daun = 32=9


Jumlah Seluruh Simpul Pada Pohon N-Ary Penuh
Pada pohon n-ary penuh dengan tinggi h,
aras 0

jumlah simpul = m0=1

aras 1

jumlah simpul = m1

aras 2

jumlah simpul = m2

...........
...........

aras h

jumlah simpul = mh

maka jumlah seluruh simpul adalah:


S=m0 +m1 +m2+ +mh=

mh+11
m1

Jika T bukan pohon n-ary penuh maka S

mh +11
m1

Hubungan Jumlah Daun dan Simpul Dalam pada Pohon N-Ary Penuh
Misalkan pada suatu turnamen tenis diikuti oleh t orang tim dengan sistem
pertandingan gugur (pemain yang kalah langsung tersingkir,pemain yang menang
melawan pemenang pertandingan lainnya). Berapa banyak pertnadingan yang
terjadi?
Persoalan di atas dimodelkan dalam bentuk pohon. Daun menyatakan
pemain, simpul dalam (termasuk akar) menyatakan para pemenang pertandingan
(jumlah seluruh simpul dalam berarti juga total banyak pertandingan yang
dilakukan sampai mencapai juara)
Misalkan i adalah banyaknya simpul dalam dan t adalah banyaknya simpul
daun di dalam pohon. Karena pertandingan adalah sistem gugur yang
menggugurkan seorang pemain dan diakhir pertandingan yang dimainkan semua
peserta telah gugur kecuali sang juara, maka banyaknya pertandingan yang terjadi
satu lebih sedikit daripada jumlah pemain. Jadi diperoleh hubungan
i=t1
Gambar berikut adalah sebuah pohon yang memodelkan sistem gugur untuk
t=8 orang pemain. Banyak pertandingan yang terjadi adalah i=81=7

kali

juara
pemenang
putaran 2
Pemenang
putaran 1

1
pemain
i. Pohon Biner

4 5

6 7

para

Pohon n-ary yang paling penting adalah pohon biner. Pohon biner adalah
pohon n-ary jika n=2. Pohon biner adalah pohon yang setiap simpul cabangnya
mempunyai paling banyak 2 buah anak. Alih-alih menyebutnya anak pertama dan
anak kedua dari suatu simpul dalam, kita menyebutnya anak kiri dan anak kanan.
Pohon yang akarnya adalah anak kiri disebut upapohon kiri, sedangkan pohon
yang akarnya adalah anak kanan disebut upapohon kanan. Karena adanya
perbedaan anak/upapohon kiri dan anak/upapohon kanan maka pohon biner
adalah pohon terurut. Pohon yang semua simpulnya di bagian kiri saja atau di
bagian kanan saja disebut pohon condong. Pohon yang condong ke kiri disebut
pohon condong kiri dan pohon yang condong ke kanan dosebut pohon condong
kanan.

Perhatikan gambar berikut!


a

b
b

c
d

(pohon condong kiri)

(pohon condong kanan)

Pohon biner penuh adalah pohon biner yang setiap simpulnya mempunyai tepat
dua buah anak, kiri dan kanan, kecuali simpul pada aras bawah

Perhatikan gambar berikut!

Gambar: pohon biner penuh


Pohon biner penuh dengan tinggi h memiliki jumlah daun sebanyak
0

2h .

h+1

Sedangkan jumlah seluruh simpulnya adalah S=2 +2 +2 ++2 =2 1


Pohon biner seimbang adalah pohon biner dengan perbedaan tinggi antara
upapohon kiri dengan upapohon kanan maksimal 1. Pada pohon biner seimbang
dengan tinggi h, semua daun berada pada aras h atau

h1 . Untung membuat

pohon seimbang, tinggi pohon secara keseluruhan harus dibuat seminimal


mungkin. Untuk memperoleh tinggi minimum, setiap aras harus mengandung
jumlah simpul sebanyak mungkin. Hal ini dapat dibuat dengan menyebarkan
setengah dari jumlah simpul di upapohon kiri dan setengah dari jumlah simpul di
upapohon kanan.
Pohon T1 dan Pohon T2 pada gambar berikut adalah pohon seimbang,
sedangkan pohon T3 bukan pohon seimbang karena perbedaan upapohon kiri dan
upapohon kanan tidak maksimal satu.
Pohon ekspresi adalah pohon biner dengan daun menyatakan operand dan
simpul dalam (termasuk akar) menyatakan operator. Perhatikan bahwa tanda
kurung tidak lagi diperlukan bila suatu ekspresi aritmetik dipresentasukan sebagai
pohon biner. Sebagai contoh, ekspresi dari (a+b)*(c/(d+e)) dinyatakan dalam
pohon biner pada gambar berikut. Daun menyatakan operand a,b,c,d dan e,
sedangkan simpul dalam menyatakan operator +,* dan /.
*
+

+
d

Gambar : pohon ekspresi dari (a+b)*(c/(d+e))


Contoh :
Gambarlah pembentukan pohon ekspresi dari ekspresi (a-b)*(c/(d-e))!
Jawab :
*

Contoh:
Evaluasi nilai dari pohon ekspresi berikut!
*

4 24

Jawab:
s
*

*
+

/
14
7

4 24

24

12

Jadi nilai evaluasi dari pohon ekspresi tersebut adalah 14.


Pohon keputusan adalah

bentuk pohon yang digunakan untuk

memodelkan persoalan yang terdiri dari serangkaian keputusan yang mengarah ke


solusi. Tiap simpul dalam menyatakan keputusan, sedangkan daun menyatakan
solusi. Sebagai contoh, kita ingin mengurutkan tiga buah bilangan a, b, dan c.
pohon keputusan untuk persoalan ini ditunjukkan pada gambar berikut.

a>c

a > b> c

a>b

b>a

c > a>
c>ab

b>c

a > c> b

b > a> c

c > b> a

c>b

b > c> a

b>c

c>b

a>c

c>a

Gambar: pohon keputusan untuk mengurutkan 3 buah elemen


Contoh:

ab=cd (abcd asli)

abcd (efgh asli)

abef
abcd

ab=ef (gh palsu)


a=g

(ef palsu)
ag
a=e

ab=ef (cd palsu)


ae

c=e

(ab palsu)
ce

a=e

ae

h
pals
u

b
pals
u

pals
u

pals
u

pals
u

pals
u

pals
u

pals
u

Anda mungkin juga menyukai