Anda di halaman 1dari 15

Teori Pohon (tree)

Makalah ini dibuat untuk melengkapi tugas mata kuliah Matematika


Diskrit

Dosen : Zikriah S.Kom

Disusun Oleh :
SUPRIYANTO
ALFONSIUS SAWE

201343501904
201343502013

PROGRAM STUDI TEKNIK INFORMATIKA


UNIVERSITAS INDRAPRASTA (UNINDRA) PGRI
JAKARTA
2015

Bab I
A. Pendahuluan
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. 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.
B. Latar Belakang
Pada umumnya, belajar matematika identik dengan menghafalkan rumus-rumus tertentu.
Dengan buku paket dan Materi dari Dosen yang banyak. Itulah yang menyebabkan para
pelajar/siswa merasa bosan untuk belajar matematika. Seringkali mereka bertanya, "Apa sih
manfaat belajar matematika dalam kehidupan sehari-hari? Apa manfaat Aljabar? Apa
manfaat himpunan? Apa manfaat trigonometri ? .
Pertanyaan-pertanyaan seperti itu sudah sering mereka lontarkan kepada guru-guru
pembimbing mereka. Pertanyaan itu mereka lontarkan karena mereka sudah kesal terhadap
pelajaran mereka yang terasa membosankan dan tidak perlu. Tetapi sebenarnya, matematika
sangat berfungsi dalam kehidupan sehari-hari, baik yang paling mudah sampai yang tersulit
sekalipun.
Matematika sebagai media untuk melatih berpikir kritis, inovatif, kreatif, mandiri dan
mampu menyelesaikan masalah sedangkan bahasa sebagai media menyampaikan ide-ide
dan gagasan serta yang ada dalam pikiran manusia. Jelas sekali bahwa Matematika sangat
berperan dalam kehidupan sehari-hari, kita tidak dapat menghindar dari Matematika,
sekalipun kita mengambil jurusan ilmu sosial tetap saja ada pelajaran Matematika di
dalamnya karena mau tidak mau matematika digunakan dalam aktivitas sehari-hari. Salah
satunya penerapan pohon (tree) untuk penyelesaian masalah dalam kehidupan sehari-hari.

C. Rumusan Masalah
1. Definisi dari Pohon .
2. Sifat-Sifat Dalam Pohon
3. Definisi Hutan
4. Apa yang dimaksud dengan pohon merentang
5. Pohon Berakar
6. Pohon Berakar Berurut
D. Tujuan
1. Mengetahui definisi dari Pohon
2. Mengetahui Sifat-siat Pohon
3. Mengetahui define Hutan
4. Mengetahui apa yang dimaksud dengan Pohon Merentang
5. Mengetahui Definisi Pohon Berakar
6. Mengetahui Definisi Pohon Berakar Berurut

C.1 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. 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.

C.2 Hutan
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. Pada gambar 1.1 G4 merupakan salah
satu contoh hutan, yaitu hutan yang terdiri dari dua pohon.
Berikut adalah beberapa sifat pohon :
Misalkan G merupakan suatu graf dengan n buah simpul dan tepat n 1 buah sisi.
Jika G tidak mempunyai sirkuit maka G merupakan pohon.
Suatu pohon dengan n buah simpul mempunyai n 1 buah sisi.
Setiap pasang simpul di dalam suatu pohon terhubung dengan lintasan tunggal.

Misalkan G adalah graf sederhana dengan jumlah simpul n, jika G tidak


mengandung sirkuit maka penambahan satu sisi pada graf hanya akan membuat
satu sirkuit.

C.3 Pohon Merentang Minimum (Minimum Spanning Tree)


Spanning Tree dari suatu graf terhubung merupakan subgraf merentang yang
berupa pohon. Pohon merentang diperoleh dengan cara menghilangkan sirkuit di dalam
graf tersebut.
Contoh spanning tree dari suatu graf terhubung (Munir, 2003) :
Perhatikan graf dibawah ini :

T1

T2

T3

T4

Terlihat bahwa T1, T2, T3, T4 merupakan spanning tree dari graf G. Perlu diperhatikan
bahwa setiap graf terhubung berbobot paling sedikit mempunyai satu buah spanning tree.
Pohon rentang yang memiliki bobot 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 memiliki langkah-langkah sebagai berikut :
1. Pilih sisi dari graf G yang berbobot minimum, masukkan ke dalam T.
2. Pilih sisi (u, v) dalam G yang mempunyai bobot minimum dan bersisian dengan
simpul di T, dengan syarat sisi tersebut tidak membentuk sirkuit di T. Masukkan
(u, v) ke dalam T.
3. ulangi langkah 2 sebanyak n 2 kali.
Jumlah langkah seluruhnya dalam algoritma Prim adalah sebanyak jumlah sisi di dalam
spanning tree dengan n buah simpul, yaitu (n 1) buah.

Contoh :
Tentukan minimum spanning tree dari graf dibawah ini :
4

4
d

3
b

5
4

4
4

e
3

f
Jawab :

Pilih sisi fg sehingga kita mempunyai T ({f, g}, fg)


Langkah selanjutnya dapat dipilih sisi ef karena sisi tersebut berbobot
minimum yang bersisian dengan simpul f .
Selanjutnya pilih sisi ae atau gh karena sisi tersebut berbobot minimum yang
bersisian dengan simpul pada T, yaitu e dan g.
Jika proses ini dilanjutkan terus maka akan diperoleh minimum spanning tree
seperti dibawah ini :
4

4
d

3
b

h
4
4
g

e
3

f
Terlihat bahwa spanning tree tersebut mempunyai total bobot 2 + 3 + 4 + 4 + 4 +
4 + 3 = 24.
Langkah-langkah dalam algoritma Kruskal agak berbeda dengan algoritma Prim.
Pada algoritma Kruskal, semua sisi dengan bobot yang minimal dimasukan kedalam T
secara berurutan.

Langkah-langkah dalam menentukan minimum spanning tree dengan algoritma Kruskal


adalah sebagai berikut :
Langkah I

: T berbentuk seperti pohon berikut

g
2

f
Langkah II

: memasukan sisi-sisi yang berbobot 3 kedalam sehingga T berbentuk

c
3

e
3

f
Langkah II

: memasukan sisi-sisi yang berbobot 4 kedalam sehingga akhirnya


diperoleh minimum spanning tree berikut :
4

4
d

3
b

h
4
4
g

e
3

C.4 Pohon Berakar


Pada suatu pohon, yang sisi-sisinya diberi arah sehingga menyerupai graf berarah,
maka simpul yang terhubung dengan semua simpul pada pohon tersebut dinamakan akar.
Suatu pohon yang satu buah simpulnya diperlakukan sebagai akar maka pohon tersebut
dinamakan pohon berakar (rooted tree). Simpul yang berlaku sebagai akar mempunyai
derajat masuk sama dengan nol. Sementara itu, simpul yang lain pada pohon itu memiliki
derajat masuk sama dengan satu. Pada suatu pohon berakar, Simpul yang memiliki
derajat keluar sama dengan nol dinamakan daun.
Contoh : Pohon Berakar (Munir, 2003)
a

b
c
e

c
e

Pohon berakar
Pada pohon berakar diatas :
a merupakan akar

c, d, f, g, h, i, dan j merupakan daun

Terminologi pada Pohon Berakar


Perhatikan pohon berakar berikut ini :

Pohon berakar setelah


tanda panah pada sisi dibuang

a. Anak (child atau children) dan Orangtua (parent)


b, c, dan d adalah anak-anak simpul a,
a adalah orangtua dari anak-anak itu
b. Lintasan (path)
Lintasan dari a ke h adalah a, b, e, h. dengan pnjang lintasannya adalah 3.
f adalah saudara kandung e, tetapi, g bukan saudara kandung e, karena orangtua
mereka berbeda.
c. Subtree
a

g
k

c. Derajat (degree)
Derajat sebuah simpul adalah jumlah anak pada simpul tersebut.
Contoh :
Simpul yang berderajat 0 adalah simpul c, f, h, I, j, l, dan m.
Simpul yang berderajat 1 adalah simpul d dan g.
Simpul yang berderajat 2 adalah simpul b dan k.
Simpul yang berderajat 3 adalah simpul a dan e.
Jadi, derajat yang dimaksudkan di sini adalah derajat-keluar.
Derajat maksimum dari semua simpul merupakan derajat pohon itu sendiri. Pohon di
atas berderajat 3
d. Daun (leaf)
Simpul yang berderajat nol (atau tidak mempunyai anak) disebut daun. Simpul h, i, j, f,
c, l, dan m adalah daun.
e. Simpul Dalam (internal nodes)
Simpul yang mempunyai anak disebut simpul dalam. Simpul b, d, e, g, dan k adalah
simpul dalam.

f. Aras (level) atau Tingkat


Level
a

g
k

g. Tinggi (height) atau Kedalaman (depth)


Aras maksimum dari suatu pohon disebut tinggi atau kedalaman pohon tersebut.
Pohon di atas mempunyai tinggi 4.
C.5 Pohon Berakar Berurut
Pohon berakar yang urutan anak-anaknya penting (diperhatiakn) maka pohon
yang demikian dinamakan pohon terurut (ordered tree). Sedangka, pohon berakar yang
setiap simpul cabangnya mempunyai paling banyak n buah anak disebut pohon n-ary.
Jika n = 2, pohonnnya disebut pohon biner (binary tree).
Contoh :
Berikut adalah beberapa contoh pohon biner :
1. Pohon Ekspresi
Ekspresi aritmetika (a b)*((c + d) / e) dapat dinyatakan dalam suatu pohon
biner, dimana peubah sebagai daun dan operator aritmetika sebagai simpul
dalam dan akar.

2. Pohon keputusan (Munir, 2004)

a:b

a:c

b:c

a>b>c

b:c

c>a>b

a>c>b

a:c

b>a>c

c>b>b

b>c>a

Pohon keputusan untuk mengurutkan 3 buah elemen


3. Kode awalan (prefix code)
Kode awalan merupakan himpunan kode (salah satunya adalah kode biner)
sedemikian sehingga tidak ada anggota himpunan yang merupakan awalan
dari
kode yang lain.
Contoh :
a. { 001, 010, 011, 11,} merupakan kode awalan
b. {001, 010, 01, 111} bukan merupakan kode awalan, karena 01 merupakan
awalan dari 010.
Kode awalan (a) dapat dinyatakan dalam pohon biner, yaitu :

11
1

000

010

011

4. Kode Hufman
Dalam komunikasi data, seringkali ditemukan data berukuran besar sehingga
waktu pengiriman data tersebut menjadi lama. Hal ini menyebabkan pentingnya kompresi
data dengan tujuan memperkecil ukuran data tersebut. Kode Hufman merupakan salah
satu metode pengkodean dalam hal kompresi data.
Perhatikan tabel kode ASCII berikut ini :
Simbol
A
B
C
D

Kode ASCII
01000001
01000010
01000011
01000100

Jadi rangkaian bit untuk string ADABCCA , dapat direpresentasikan dalam bentuk :
0100000101000100010000010100001001000001101000001101000001
atau 7 8 = 56 bit (7 byte).

Tabel Tabel kekerapan dan kode Huffman untuk string ABACCDA


Simbol
A
B
C
D

Kekerapan
3
1
2
1

Peluang
3/7
1/7
2/7
1/7

Kode Huffman
0
110
10
111

Sehingga rangkaian bit untuk string ADABCCA: 111110010100 atau 13 bit.

1.1 Penelusuran Pohon Biner


Misalkan, berikut ini adalah pohon biner dimana A merupakan akar pohon biner
tersebut. Sementara itu, S dan T merupakan upapohon (subtree) dari pohon biner.
A

Ada tiga jenis penelusuran pohon biner diatas, antara lain :


1. Preorder : A, S, T
- kunjungi A
- kunjungi S secara preorder
- kunjungi T secara preorder
2. Inorder : S , A, T
- kunjungi S secara inorder
- kunjungi A
- kunjungi T secara inorder
3. Postorder : S, T , A
- kunjungi S secara postorder
- kunjungi T secara postorder
- kunjungi A
Contoh :
Tentukan hasil penelusuran preorder, inorder,
bawah ini :

dan postorder

dar pohon di

Jawab :
preorder
inorder
postorder

: *+a/b c-d*ef
: a+b/c*d-e*f
: abc/+def*-*

(prefix)
(infix)
(postfix)

Latihan :
1. Tentukan semua spanning tree dari graf berikut :
q

p
t
r

2. Diketahui suatu graf seperti dibawah ini :


a. graf G1
B
2

8
8

6
F

b. graf G2
c
b

a
4
f

5
6

3
d

g
Tentukan minimum spanning tree dengan menginakan :
a. Algoritma Prim
b. Algoritma Kruskal
3. Buat sketsa graf biner (pohon ekspresi) yang merepresentasikan ekpresi :
a. p / (q r )*(s + t)
b. (p + q) / r (s + t * u)
4. Tentukan hasil penelusuran dari pohon ekspresi pada soal no. 3 dalam bentuk
preorder, inorder, dan postorder.

5. Pada graf dibawah ini, himpunan simpul mendefinisikan himpunan desa pada
suatu kecamatan. Dalam rangka pembuatan jalan antar desa dibuatlah anggaran
pembiayaan seperti tertulis sebagai bobot (dalam satuan juta rupiah) setiap sisi.
Tentukan biaya minimum yang harus disiapkan dalam pembangunan jalan antar
desa tersebut sehingga setiap desa pada kecamatan tersebut terhubung
(ingat definisi terhubung pada suatu graf).
a

b
3

5
c

4
d

6
5

Bab IV
Penutup
A. Kesimpulan
Semoga makalah ini dapat memberikan pelajaran bagi kita semua untuk menambah
wawasan yang ada dan ilmu yang bermanfaat serta membantu dalam proses pembelajaran SPI
khususnya. Dan semoga bermanfaat dalam kehidupan terlebih di akhirat kelak amin.
Atas keterbatasan kemampuan penulis/kelompok serta keterbatasan media yang di gunakan
dalam pembuatan makalah ini sehingga makalah ini dapat terselesaikan, dan apabila terdapat
banyak kesalahan ataupun kekurangan yang dimiliki makalah ini penulis mengharapkan kritik
dan saran yang membangun demi memperbaiki makalah selanjutnya.
Marilah kita belajar dari pengalaman-pengalaman yang ada, baik pengalaman yang kurang
baik sebagai motivasi untuk memperbaikinya, serta pengalaman yang baik sehingga kita
semua termotivasi untuk lebih baik lagi.

B. Daftar Pustaka
1. http://student.uniku.ac.id/
2. http://file.upi.edu/
3. https://www.google.com/

Anda mungkin juga menyukai