informatikaunindra.orginformatikaunindra.org/file/DISKRIT/Diktat/MATERI KULIAH... · Web viewRouter...

18
BAB VI TREE (POHON) 1. Definisi Tree(pohon)/Free Tree(pohon bebas): graf yang tak berarah terhubung yang tidak mengandung sirkuit. Contoh: a b a b a b c d c d c d e f e f e f G 1 G 2 G 3 Gb. 1,G 1 & G 2 adalah Pohon, sedangkan G 3 bukan Pohon 2. Forest/Hutan : - kumpulan pohon yang saling lepas - Graf tak terhubung yang tidak mengandung sirkuit Gb. 2,Hutan yang terdiri dari 3 pohon 65

Transcript of informatikaunindra.orginformatikaunindra.org/file/DISKRIT/Diktat/MATERI KULIAH... · Web viewRouter...

BAB VI

TREE (POHON)

1. Definisi Tree(pohon)/Free Tree(pohon bebas): graf yang tak berarah terhubung yang tidak mengandung sirkuit.

Contoh:

a b a b a b

c d c d c d

e f e f e f

G1 G2 G3

Gb. 1,G1 & G2 adalah Pohon, sedangkan G3 bukan Pohon

2. Forest/Hutan : - kumpulan pohon yang saling lepas- Graf tak terhubung yang tidak mengandung sirkuit

Gb. 2,Hutan yang terdiri dari 3 pohon

3. Spanning Tree(Pohon Merentang)

Missal :G=(V,E) adalah graf tak berarah terhubung yang bukan pohon, yang berarti di G terdapat beberapa sirkuit. G dapat diubah menjadi T=(V1,E1) dengan cara memutuskan sirkuit-sirkuit yang ada.

65

Bila proses ini dilakukan berulang-ulang sampai semua sirkuit di G hilang, maka G menjadi sebuah pohon T, yang dinamakan pohon merentang(spanning tree) adalah : sebuah simpul pada pohon T sama dengan semua simpul pada graf G, dan sisi-sisi pada pohon T ⊆ sisi-sisi pada graf G.

Dengan kata lain V1 = V dan E1 ⊆ E.

G T1 T2 T3 T4

Gb. 3,Graf lengkap G & 4 pohon merentangnya T1,T2,T3 & T4

(a) (b)

Router

Subnetwork

Gb. 4,(a) jaringan computer, (b) pohon merentang

4. Minimum Spanning Tree(pohon merentang minimum)

Jika E adalah graf berbobot, maka bobot pohon merentang T dari G didefinisikan sebagai jumlah bobot semua sisi di T

Diantara semua pohon merentang di G, pohon merentang yang berbobot minimum dinamakan minimum spanning tree (pohon merentang minimum).

66

Contoh:

A A

45 D 30 H D 30 H

55 25 25

B C 20 50 B C 20

5 40 G 5 40 G

15 15

E 35 10 E 10

F F

(a) (b)

Gb. 5(a) graf berbobot, (b) graf berbobot minimum

(a) Algoritma Prim

Missalkan T adalah pohon merentang yang sisi-sisinya diambil dari graf G. Algoritma Prim membentuk pohon merentang minimum langkah per langkah. Pada setiap langkah mengambil sisi e dari graf G yang mempunyai bobot minimum dan bersisian dengan simpul-simpul di dalam T tetapi e tidak membentuk sirkuit di dalam T.

Contoh:

1 2 50 1 10 2

3 3

4 25 40 35 4 25 35

20 55 5 15 20 5 15

6 6

(a) (b)

Gb.6, (a) contoh graf untuk algoritma Prim & Kruskal, (b) pohon merentang minimum

Bobot pohon merentang minimum adalah = 10+25+15+20+35 = 105

67

Table 1, Tabel Pembentukan pohon merentang minimum dengan algoritma prim

Langkah Sisi Bobot Pohon Merentang

1 (1,2) 10 1 10 2

2 (2,6) 25 1 10 2

25

6

3 (3,6) 15 1 10 2

25 3

15

6

4 (4,6) 20 1 10 2

25 3

4 15

20

6

5 (3,5) 35 1 10 2

25 35 3

4 5 15

20

6

68

(b) Algoritma Kruskal

Lihat gambar 6a. carilah pohon merentang minimumnya dengan algoritma kruskal.

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

Table 2, table pembentukan pohon merentang minimum dengan algoritma kruskal

Langkah Sisi Bobot Pohon merentang

0 1 2 3 4 5 6

1 (1,2) 10 1 2

2 (3,6) 15 1 2 3

6

3 (4,6) 20 1 2 3

4

6

4 (2,6) 25 1 2 3

4

6

5 (1,4) 30 ditolak

6 (3,5) 35 1 2 3

4 5

6

69

5. Rooted Tree (Pohon Berakar)

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 = 0 dan simpul-simpul lainnya derajat masuknya = 1. Simpul yang mempunyai derajat keluar = 0 disebut daun/simpul terminal, simpul yang

mempunyai derajat keluar 0 disebut simpul dalam/simpul cabang.

a a

b c d b c d

cabang

e f g e f g

h i j daun h i j

(a) (b)

Gb.7, (a) pohon berakar,(b) sebagai konversi,arah panah dapat dibuang

a e f

b d g (a)

c h

b e

(b)

a c d d f

e g h g h b (c)

f a c

Gb.8, (a) pohon,(b) b sebagai akar,(c) e sebagai akar

70

6. Terminology pada Pohon berakar

A

B C D

E F G

H I J K

L M

Gb.9, pohon berakar yang digunakan untuk menjelaskan terminology pohon

#Child(anak) & Parent(orang tua)#

Pada gb.9, simpul A sebagai parent; simpul B,C dan D sebagai child dari simpul A; simpul B mempunyai child yaitu simpul E dan F dan seterusnya; simpul H,I,J,F,L,M tidak mempunyai child.

#Path(lintasan)#

Panjang Lintasan adalah jumlah sisi yang dilalui dalam suatu lintasan Panjang lintasan dari

simpul A ke simpul J adalah 3 yaitu simpul A,B,E dan J

#Descendant(keturunan) dan Ancestor(leluhur)#

Jika terdapat lintasan dari simpul x ke simpul y di dalam pohon, maka x adalah leluhur dari simpul y, dan simpul y adalah keturunan simpul x. Pada gb. 9,simpul B adalah leluhur simpul H dan dengan demikian simpul H adalah keturunan simpul B.

#Sibling(saudara kandung)#

Simpul yang berorang tua sama adalah sibling satu sama lain. Pada gb.9, simpul F adalah sibling dengan simpul E. Tapi simpul G bukan sibling dengan simpul E, karena parent mereka berbeda.

71

#Subtree(upapohon)#

Misalkan x adalah simpul di dalam pohon. T yang dimaksud dengan subtree dengan x sebagai akarnya ialah subtree T’ = (V’,E’) sedemikian hingga V’ mengandung x dan semua keturunannya dan E’ mengandung sisi-sisi dalam semua lintasan yang berasal dari x.

A

B C D

E F G

H I J K

L M

Gb. 10, subtree T’=(V’,E’) dan simpul B sebagai akarnya

V’ = {B,E,F,H,I,J} dan E’ = {(B,E),(B,F),(E,H),(E,I),(E,J)} dan simpul B sebagai akarnya.

#Degree(derajat )#

Degree sebuah simpul pada pohon berakar adalah jumlah subtree(jumlah anak) pada simpul tersebut. Pada gb.9, derajat simpul A adalah 3, simpul B adalah 2, simpul D adalah 1 dan simpul C adalah 0.

Jadi, derajat yang dimaksudkan adalah derajat-keluar. Derajat maksimum dari semua simpul merupakan derajat pohon itu sendiri.

#Internal Nodes(simpul dalam)#

Simpul yang mempunyai child disebut simpul dalam, pada gb.9 simpul D,E,G dan K adalah simpul dalam.

72

#Level (tingkat)#

Akar mempunyai level = 0, sedangkan level simpul lainnya = 1 + panjang lintasan dari akar ke simpul tersebut. level

A ……………………. 0

B C D………….. 1

E F G ……………. 2

H I J K …………….. 3

L M………….. 4

Gb. 11, pendefinisian level tiap pohon

#Height(tinggi) atau Depth(kedalaman)#

Level maksimum dari suatu pohon disebut height /depth pohon tersebut. Atau, dapat juga dikatakan, tinggi pohon adalah panjang maksimum lintasan dari akar ke daun. Pada gb.11, mempunyai tinggi 4.

7. Pohon Berakar Terurut

Definisi : pohon berakar yang urutan anak-anaknya penting disebut ordered tree (pohon terurut).

Pada pohon terurut, urutan anak-anak dari simpul dalam dispesifikasikan dari kiri ke kanan.

1 urutan simpul child dari simpul 1 adalah simpul

2 3 4 2,3 dan 4

5 6 7 8 9

10

Gb. 12, pohon berakar terurut

73

8. Pohon m-ary

Definisi : pohon berakar yang setiap simpul cabangnya mempunyai paling banyak n anak buah disebut pohon m-ary

Pohon m-ary dikatakan full (pohon penuh)/pohon teratur jika setiap simpul cabangnya mempunyai tepat m buah anak.

0

1 2 3

1,1 1,2 2,1 2,2 2,3 3,1 3,2 3,3 3,5

Gb. 13, pohon m-ary

9. Binary Tree (Pohon Biner)

Pohon biner adalah pohon yang setiap simpul cabangnya mempunyai paling banyak dua buah anak.

a a

anak kanan(righ child)

b c b c

anak kiri(left child)

d d

gb. 14, pohon biner

Pohon yang akarnya adalah anak kiri disebut subtree kiri (left subtree), sedangkan pohon yang akarnya adalah anak kanan disebut subtree kanan (right subtree).

Pohon yang semua simpulnya terletak di bagian kiri/kanan saja disebut pohon condong (skewed tree). Pohon yang condong ke kiri disebut skew left, pohon yang condong ke kanan disebut skew right.

74

a a

b b

c c

d d

Gb. 15,Skewkiri dan skew kanan

Full Binary Tree(Pohon biner Penuh) adalah pohon biner yang setiap simpulnya mempunyai tepat dua buah anak kiri dan kanan, kecuali simpul pada level bawah.

Gb.16, Full Binary Tree

10. Pohon Ekspresi

Adalah pohon biner dengan daun menyatakan operand dan simpul dalam (termasuk akar) menyatakan operator.

Contoh: ekspresi (a+b)*(c/(d+e); daun menyatakan operand a,b,c, d dan e sedangkan simpul dalam menyatakan termasuk akar menyatakan operator +,* dan /

*

Gb. 17, Pohon Ekspresi

+ /

a b c +

d e

75

11. Tranversal Pohon Biner

Operasi dasar yang sering dilakukan pada pohon biner ialah mengunjungi (tranversal) setiap simpul tepat satu kali.

Ada 3 macam skema mengunjungi simpul-simpul di dalam pohon biner T:

1. Preorder(i) Kunjungi R (sekaligus memproses simpul R)(ii) Kunjungi T1 secara preorder(iii) Kunjungi T2 secara preorder

2. Inorder(i) Kunjungi T1 secara inorder(ii) Kunjungi R (sekaligus memproses simpul R)(iii) Kunjungi T2 secara inorder

3. Postorder (i) Kunjungi T1 secara postorder(ii) Kunjungi T2 secara postorder(iii) Kunjungi R (sekaligus memproses simpul R)

PREORDER langkah 1: kunjungi R INORDER langkah 2 : kunjungi R

Langkah2:kunjungi T1 langkah3:kunjungi T2 lankgah1:kunjungi T1 langkah2:kunjungi T2

Secara preorder secara preorder secara inorder secara inorder

POSTORDER langkah 3: kunjungi R

Langkah1:kunjungi T1 langkah2: kunjungi T2

Secara postorder secara postorder

Gb.18 Skema mengunjungi pohon biner

76

R

R

R

T111

T211

T211

T111

T2

T111

Latihan Soal Graf dan Tree

1. Tentukan mana diantara graf-graf dibawah ini yang merupakan sirkuit euler berdasarkan kaidah yang berlaku!

V3 V1 V2 e2 (A)

e 3 e 3 e4 e1 e 1 V4 V6 e4 V2

e4 V10 e14 V1 e 6 e5 e 11 e 5 e 13 V5 e6 V6 V5 e2 V3 e 12 V8 e10 V9 e8 e7 V4

e 9 (B) V7

V2

e 1 e4

V1 V3 (C)

e 8 e5

V4

2. Pada graf berikut ini, tentukan apakah memiliki sirkuit Hamilton, jika tidak berikan alasannya! A B

A B

D

C E C E

F G F G

(A) (B)

77

e 2

e3

V5

e 7

e6

D

3. Tentukan pohon perentang minimum graf berikut dengan mengunaajan algoritma prim!A

11 12 1 A B

F B 4 20

C E F 3 8 19

8 E 4 5 C G H

4 5 13D

A B C D

E

78

9

2

10

7

D10

15

2 5

18

2 2

8 8 1

DAFTAR PUSTAKA

Lipschutz, S dan Mark Lars, Discrete Mathematic, Schaum Series, McGraw Hill, 1976

Munir, Rinaldi, Matematika Diskrit, Informatika Bandung, 2001

Sthanat, Donalt F., Discrete Mathematics for Computer Science, Engleward Cliffs, Prentice

Hall Inc, 1977

79