Anda di halaman 1dari 23

GRAF

Graf adalah :
Himpunan V (Vertex) yang elemennya disebut simpul (atau point
atau node atau titik)
Himpunan E (Edge) yang merupakan pasangan tak urut dari
simpul, anggotanya disebut ruas (rusuk atau sisi)
Notasi : G(V,E)
Simpul u dan v disebut berdampingan bila terdapat ruas (u,v).
Graf dapat pula disajikan secara geometrik, simpul disajikan sebagai
sebuah titik, sedangkan ruas disajikan sebagai sebuah garis yang
menghubungkan 2 simpul.
Contoh 1 :
Graf G(V,E) dengan :
1. V terdiri dari 4 simpul, yaitu simpul A, B, C dan D
2. E terdiri dari 5 ruas, yaitu e1 = (A, B) e2 = (B, C)
e4 = (C, D) e5 = (B, D)
A

e1

e3
e5

e3 = (A, D)

e4

e2

Banyak simpul disebut ORDER, banyak ruas disebut SIZE dari graf.
Graf yang lebih umum disebut Multigraf
Contoh 2 :
Graf G(V,E) dengan :
1. V terdiri dari 4 simpul, yaitu simpul A, B, C dan D
2. E terdiri dari 6 ruas, yaitu e1 = (A, C) e2 = (A, A)
e4 = (C, D) e5 = (B, C) e6 = (B, C)
A e2

e3
e1

e3 = (A, D)

e4

e5

e6

Di sini ruas e2 kedua titik ujungnya adalah simpul yang sama, yaitu
simpul A, disebut Gelung atau Self-Loop. Sedangkan ruas e5 dan e6

mempunyai titik ujung yang sama, yaitu simpul B dan C, disebut


Ruas Berganda atau Ruas Sejajar.
Suatu graf yang tidak mengandung ruas sejajar ataupun self-loop
disebut Graf Sederhana atau Simple Graf.
Suatu graf G(V,E) disebut subgraf dari G(V,E), jika V himpunan
bagian dari V dan E himpunan bagian dari E.
Jika E mengandung semua ruas dari E yang titik ujungnya di V,
maka G disebut subgraf yang direntang oleh V (Spanning subgraf).
Contoh :
A

e5

e1

e3

e4

e2

e1

G subgraf dari G
(namun bukan dibentuk
oleh V = {A,B,D})

e3

G subgraf yang dibentuk oleh V = (A,B,D)


A

e5

e1

e3

B
GRAF BERLABEL
Graf G disebut graf berlabel jika ruas dan atau simpulnya dikaitkan
dengan suatu besaran tertentu. Jika setiap ruas e dari G dikaitkan
dengan suatu bilangan non negatif d(e), maka d(e) disebut bobot
atau panjang dari ruas e.
DERAJAT GRAF

Derajat simpul V, ditulis d(v) adalah banyaknya ruas yang


menghubungi v. Karena setiap ruas dihitung dua kali ketika
menentukan derajat suatu graf, maka :
Jumlah derajat semua simpul suatu graf (derajat) = dua kali
banyaknya ruas graf (size graf).
Suatu simpul disebut genap/ganjil tergantung apakah derajat simpul
tersebut genap/ganjil. Kalau terdapat self-loop, maka self-loop
dihitung 2 kali pada derajat simpul.
Contoh :
G

E
C
D
Di sini banyaknya ruas = 7, sedangkan derajat masing-masing simpul
adalah :
d(A) = 2
d(D) = 3
derajat graf G = 14
d(B) = 5
d(E) = 1
(2 * 7)
d(C) = 3
d(F) = 0
Catatan : E disebut simpul bergantung/akhir, yakni simpul yang
berderajat satu. Sedangkan F disebut simpul terpencil, yakni simpul
berderajat nol.
KETERHUBUNGAN
Walk atau perjalanan dalam graf G adalah barisan simpul dan ruas
berganti-ganti : v1, e1, v2, e2, , en-1, vn
Di sini ruas e1 menghubungkan simpul vi dan vI+1
Banyaknya ruas disebut panjang walk.
Walk dapat ditulis lebih singkat dengan hanya menulis deretan ruas :
e1, e2, , en-1
atau deretan simpul : v1, v2, , vn-1, vn
v1 disebut simpul awal, vn disebut simpul akhir
Walk disebut tertutup bila v1 = vn , dalam hal lain walk disebut
terbuka, yang menghubungkan v1 dan vn
Trail adalah walk dengan semua ruas dalam barisan berbeda.
Path atau jalur adalah walk dengan semua simpul dalam barisan
berbeda. Jadi path pasti trail, sedangkan trail belum tentu path.

Dengan kata lain : Suatu path adalah suatu trail terbuka dengan
derajat setiap simpulnya = 2, kecuali simpul awal v 1 dan vn simpul
akhir berderajat = 1.
Cycle atau sirkuit adalah suatu trail tertutup dengan derajat setiap
simpul = 2.
Contoh :
Graf yang tidak mengandung cycle disebut acyclic, contoh : pohon
atau tree.
Suatu graf G disebut terhubung jika untuk setiap 2 simpul dari graf
terdapat jalur yang menghubungkan 2 simpul tersebut.
Subgraf terhubung suatu graf disebut komponen dari G bila subgraf
tersebut tidak terkandung dalam subgraf terhubung lain yang lebih
besar.
Contoh : Graf G terdiri dari 3 komponen
B

Terlihat misalnya antara D dan A tidak ada jalur.


Jarak antara 2 simpul dalam graf G adalah panjang jalur terpendek
antara ke-2 simpul tersebut.
Diameter suatu graf terhubung G adalah maksimum jarak antara
simpul-simpul G.
Contoh : Graf G (graf terhubung) terdiri dari 1 komponen
C
E

Jarak maksimum dalam graf G adalah 3 (yaitu antara A G atau B


G ataupun C G). Jadi diameter = 3.

Kalau order dari G = n, size dari G = e, dan banyaknya komponen =


k, maka didefinisikan :
Rank(G) = n k
Nullity(G) = e (n k)

MATRIKS PENYAJIAN GRAF


Pandang bahwa G graf dengan N simpul dan M ruas.
Untuk mempermudah komputasi, graf dapat disajikan dalam bentuk
matriks, disebut Matriks Ruas, yang berukuran (2 x M) atau (M x 2)
yang menyatakan ruas dari graf.
Matriks adjacency dari graf G tanpa ruas sejajar adalah matriks A
berukuran (N x N), yang bersifat :
1, bila ada ruas (vi, vj)
aij =
0, dalam hal lain
Matriks adjacency merupakan matriks simetri.
Untuk graf dengan ruas sejajar, matriks adjacency didefinisikan
sebagai berikut :
p, bila ada p buah ruas menghubungkan (v i, vj) (p > 0)
aij =
0, dalam hal lain
Matriks Incidence dari graf G, tanpa self-loop didefinisikan sebagai
matriks M berukuran (N x M)
1, bila ruas ej berujung di simpul vi,
mij =
0, dalam hal lain
Contoh :
e5
v1

v4

e4

e1

e2

v2

e3

v5

e8

e6

e7

v3

Matriks Ruas
1 1 1 1 2 3 3 4
2 3 4 5 3 4 5 5

atau

1
1
1
1
2
3
3
4

2
3
4
5
3
4
5
5

Matriks Adjacency : N x N

v1
v2
v3
v4
v5

v1

v2

v3

v4

v5

0
1
1
1
1

1
0
1
0
0

1
1
0
1
1

1
0
1
0
1

1
0
1
1
0

Matriks Incidence : N x M

v1
v2
v3
v4
v5

e1

e2

e3

e4

e5

e6

e7

e8

1
1
0
0
0

1
0
1
0
0

0
1
1
0
0

1
0
0
1
0

1
0
0
0
1

0
0
1
1
0

0
0
1
0
1

0
0
0
1
1

GRAF BERARAH (DIGRAF)


Suatu graf berarah (digraf) D terdiri atas 2 himpunan :
1. Himpunan V, anggotanya disebut simpul
2. Himpunan A, merupakan himpunan pasangan terurut, yang
disebut ruas berarah atau arkus.
Notasi : D(V, A)
Simpul, anggota v, digambarkan sebagai titik (atau lingkaran kecil).
Sedangkan arkus a=(u,v), digambarkan sebagai garis dilengkapi
dengan tanda panah mengarah dari simpul u ke simpul v. Simpul u
disebut titik pangkal, dan simpul v disebut titik terminal dari arkus
tersebut.
Contoh :
Graf berarah D (V, A) dengan :
1. V mengandung 4 smpul, yaitu : 1, 2, 3 dan 4
2. A mengandung 7 arkus, yaitu : (1,4), (2,1), (2,1), (2,2), (2,3), (2,4),
(4,3).
1

Arkus (2, 2) :

gelung /

self loop
Arkus (2,1) : arkus sejajar

/ arkus berganda

POHON
A. Pohon
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.
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.

Pohon (G1)

pohon (G2)

bukan pohon (G3)

bukan pohon (G4)

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.

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 simpul-simpul
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.

Jadi, pohon merentang:

Pohon merentang dari graf terhubung adalah subgraf merentang yang


berupa pohon.

P
ohon merentang diperoleh dengan memutus sirkuit di dalam graf.
G

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)

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
6

35

5
15

Contoh:

Langkah

Sisi

Bobot

Pohon rentang

Pohon merentang minimum yang dihasilkan:

10
45

35
25
55

20
6

5
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
Bobot

(1,2)
10

(3,6)
15

(4,6)
20

(2,6)
25

(1,4)
30

(3,5)
35

(2,5)
40

(1,5)
45

(2,3)
50

(5,6)
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
6

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 Gambar menunjukkan hal
ini

(a) pohon berakar, (b) sebagai konvensi, arah panah pada sisi dapat dibuang.
Pohon berakar pertama memilih
kedua memilih e

sebagai akar sedangkan pohon akar

sebagai akar.

F. Terminologi Pada Pohon Berakar


Keseluruhan sisa bab ini akan menggunakan istilah pohon berakar untuk
membedakannya dengan pohon tidak berakar (free tree).

Anak (child atau children) dan Orangtua (parent)


b ,

Pada Gambar dibawah


a
dan

c , dan

adalah orangtua dari

adalah orangtua dari

dan

g . Simpul

dan

f .

h ,

i ,

a , dan

adalah anak-anak simpul

adalah orang tua dari anak-anak itu.


b

adalah anak simpul


j ,

b ,

adalah anak-anak simpul


l , dan

d , dan

tidak mempunyai

anak

Lintasan (path)
Lintasan dari simpul v 1 ke simpul v k
vk

sedemikian sehingga

vi

adalah runtutan simpul v 1 , v 2 , ...,


v i +1

adalah orang tua dari


a

pohon pada Gambar 9.11, lintasan dari

ke

untuk
a ,

adalah

1 i<k . Dari

b ,

e ,

k 1 .

Panjang lintasan adalah jumlah sisi yang dilalui dalam suatu lintasan, yaitu
Panjang lintasan dari a ke

j .

adalah 3.

Keturunan (descendant) dan Leluhur (ancestor)


Jika terdapat lintasan dari simpul

y , dan

adalah leluhur dari simpul

gambar 9.11, b adalah leluhur simpul

ke simpul

di dalam pohon, maka

adalah keturunan dari simpul

h , dan dengan demikian

x . Pada

adalah keturunan

dari b .

Saudara Kandung (sibling)


Sampul yang berorangtua sama adalah saudara kandung
saudara kandung e , karena orangtua mereka berbeda.

Upa Pohon (subtree)

e . Tetapi,

bukan

pada

gambar

dibawah

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

dengan
dan

T . Dengan pengertian di atas, jika

upapohon dari

x disebut anak, dan

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

dan

adalah simpl akarnya. Terdapat banyak


x

adalah simpul, maka akar tiap-tiap

x adalah orangtua setiap akar pohon.

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 diatas 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.
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
diatas 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 dibawah

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 diatas mempunyai tinggi 4.

G. Pohon Berakar Terurut


Definisi 9.3. pohon berakar yang urutan anak-anak panahnya penting disebut pohon
terurut (ordered tree)
Sebagi contoh, dua buah pohon pada gambar diatas 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.
(b)

(a)

3
6

4
8

9 6

10
10

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)


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.
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)

(verb)

(object)

(article)

(noun phrase) (wears) (article)

(adjective)
Tall

(noun)

Boy

(noun phrase)

(adjective)

(noun)

Red Hat

Gambar 9.16 Pohon parsing dari kalimat A tall boy wears a red hat"
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

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

jumlah simpul = mh

aras h

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 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=t 1

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

4 5

6 7

para pemain

I. Pohon Biner
Pohon biner adalah pohon yang setiap simpul cabangnya mempunyai paling banyak
2 buah anak.

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

Sedangkan jumlah seluruh simpulnya adalah S=20 +21 +22 ++2 h=2h+11
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 /.
*
+
a

/
b

+
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

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>b

b>a
c > b> a

c > a> b

a > b> c

a > c> b

b > a> c

b > c> a

a>c
b>c

c>a

c>b

b>c
a>c

c>b
c>a

Gambar: pohon keputusan untuk mengurutkan 3 buah elemen


Contoh:

ab=cd (abcd asli)

abcd (efgh asli)

abcd
(ef palsu)

ab=ef (gh palsu)


a=g

ag

a=e

abef
(ab palsu)

ab=ef (cd palsu)


ae

c=e

ce

a=e

ae

h
palsu

b
palsu

palsu

palsu

palsu

palsu

palsu

palsu

Anda mungkin juga menyukai