sesi 1. pohon bagian iii

25
UPT SAM Sesi 1. POHON BAGIAN III Mata Kuliah 1041102 MATEMATIKA DISKRIT D4 Prodi Teknologi Rekayasa Perangkat Lunak Fakultas Informatika dan Teknik Elektro Yoli Agnesia, S.Pd, M.Si

Upload: others

Post on 03-Apr-2022

7 views

Category:

Documents


0 download

TRANSCRIPT

UPT SAM

Sesi 1.

POHON BAGIAN III

Mata Kuliah 1041102

MATEMATIKA DISKRIT

D4 Prodi Teknologi Rekayasa Perangkat Lunak

Fakultas Informatika dan Teknik Elektro

Yoli Agnesia, S.Pd, M.Si

Referensi

Buku :

1. Rinaldi Munir

2. Rosen

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 2

SUB TOPIK

1. Pohon n-ary

2. Pohon Biner

3. Penerapan Pohon Biner

4. Penelusuran (Traversal) Pohon Biner

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 3

Pohon n-ary

Defenisi:

Pohon berakar yang setiap simpul cabangnya mempunyai paling banyak n buahanak disebut pohon n-ary.

Pohon n-ary dikatakan teratur atau penuh (full) jika setiap simpul cabangnyamempunyai tepat n anak Contoh:

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 4

Gambar 1. Pohon 3-ary

Sumber Gambar 1. : http://belajar-barengan.blogspot.com/2012/11/struktur-data-pohon-binar-1.html

Pohon Biner

• Adalah pohon n-ary dengan n = 2.

• Setiap simpul di dalam pohon biner mempunyai paling banyak 2 buah anak.

• Dibedakan antara anak kiri (left child) dan anak kanan (right child)

• Karena ada perbedaan urutan anak, maka pohon biner adalah pohon terurut.

Contoh:

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 5

Jenis-jenis Pohon Biner

1. Pohon Biner Condong

2. Pohon Biner Penuh

3. Pohon Biner Seimbang

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 6

Penerapan Pohon Biner

1. Pohon Pencarian Biner

2. Pohon Keputusan

3. Kode Huffman

4. Pohon Ekspresi

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 7

Pohon Pencarian Biner

• Pohon pencarian biner sangat berguna untuk menyelesaikan masalah yang berkaitan dengan pencarian, penyisipan, dan penghapusan elemen.

• Simpul pada pohon pencarian biner berupa kunci/data itu sendiri (harus bersifat unik).

• Pohon pencarian biner adalah pohon biner yang setiap kuncinya diatur dalam suatu urutan tertentu, aturannya adalah:

a. Semua simpul pada upapohon kiri mempunyai nilai kunci lebih kecil dari kunci pada akar (R)

b. Semua simpul pada upapohon kanan mempunyai nilai kunci lebih besar dari kunci pada akar (R)

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 8

Pohon Pencarian Biner

Contoh 1: Buatlah pohon pencarian biner dengan kata: mathematics, physics, geography, zoology, meteorology, geology, psychology, and chemistry (menggunakan urutan abjad)

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 9

Pohon Pencarian Biner

Contoh 2:

Buatlah pohon pencarian biner dengan data berikut

Data:

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 10

Pohon Keputusan

Pohon keputusan digunakan untuk memodelkan persoalan yang terdiri dari serangkaiankeputusan yang mengarah ke solusi.

Tiap simpul dalam menyatakan keputusan, sedangkan daun menyatakan solusi.

Contoh: akan diurutkan tiga buah bilangan a, b, dan c

Gambar Pohon keputusan untuk mengurutkan 3 buah elemen

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 11

Kode Huffman

• Pohon Huffman adalah pohon yang digunakan untuk menemukankode untuk huruf pada pesan.

• Kode Huffman berguna untuk meminimumkan jumlah bit yang dibutuhkan dalam merepresentasikan pesan sehingga kita dapat memampatkan (compression) data.

• Kode untuk setiap huruf/karakter pada setiap pesan unik.

• Dalam membangun sebuah pohon huffman, setiap cabang (sisi) kiridiberi label 0 dan pada setiap cabang (sisi) kanan diberi label 1.

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 12

Kode Huffman

Contoh 1:

Temukan kode Huffman untuk setiapkarakter dengan peluang kemunculansebagai berikut:

A: 0.08,

B: 0.10,

C: 0.12,

D: 0.15,

E: 0.20,

F: 0.35.

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 13

Kode Huffman yang diperolehDari pohon Huffman adalahA : 111B : 110C : 011D : 010E : 10F : 00

Kode Huffman

Contoh 2: Berikut pohon Huffman untuk pesan ‘ABACCDA’

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 14

Kode Huffman untuk setiap karakter:A = 0B = 110C = 10D = 111

‘ABACCDA’ dapat ditulis dalam kodeHuffman sebagai berikut,

0110010101110

Pohon Ekspresi

Pohon ekspresi ialah pohon biner dengan daun menyatakan operand dan simpul dalam (termasuk akar) menyatakan operator.

Contoh:

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

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 15

Pohon Ekspresi

Pohon ekspresi digunakan untuk mengevaluasi ekspresi yang ditulisdalam notasi :

1. Prefix : operator mendahului dua buah operandnya

2. Infix : operator berada di antara dua buah operand

3. Postfix : kedua operand mendahului operatornya

Contoh:

*+ab/c+de dalam bentuk prefix

(a+b)*(c/(d+e)) dalam bentuk infix

ab+cde+/* dalam bentuk postfix

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 16

Penelusuran (Traversal) Pohon Biner

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

• Proses yang dilakukan terhadap simpul yang dikunjungi misalnya mencetakinformasi yang disimpan di dalam simpul, memanipulasi nilai dan lain sebagainya

• Misal R adalah akar, T1 adalah upapohon kiri dan T2 adalah upapohon kanan.

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

1. Preorder : R, T1, T2- kunjungi R- kunjungi T1 secara preorder- kunjungi T2 secara preorder

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 17

Penelusuran (Traversal) Pohon Biner

Contoh Traversal Preorder:

Temukan lintasan preorder daripohon biner berikut ini,

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 18

Penelusuran (Traversal) Pohon Biner

2. Inorder : T1, R, T2

- kunjungi T1 secara inorder

- kunjungi R

- kunjungi T2 secara inorder

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 19

Penelusuran (Traversal) Pohon Biner

Contoh Traversal Inorder:

Temukan lintasan inorder daripohon biner T berikut ini,

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 20

Penelusuran (Traversal) Pohon Biner

2. Postorder : T1, R, T2

- kunjungi T1 secara postorder

- kunjungi T2 secara postorder

- kunjungi R

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 21

Penelusuran (Traversal) Pohon Biner

Contoh Traversal Preorder:

Temukan lintasan preorder daripohon biner berikut ini,

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 22

Penelusuran (Traversal) Pohon Biner

Notasi/ekspresi (lintasan) hasil traversal pohon biner disebut juga dengan:

1. Traversal preorder disebut prefix

2. Traversal inorder disebut infix

3. Traversal postorder disebut postfix

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 23

Penelusuran (Traversal) Pohon Biner

1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 24

Contoh: temukan lintasan dari masing-masing traversal dari pohon biner berikut,

THANK YOU1041102_MATEMATIKA DISKRIT_WEEK 13_YAG 25