• Tidak ada hasil yang ditemukan

Module 7 Algoritma & Struktur Data (Binary Tree)

N/A
N/A
Protected

Academic year: 2019

Membagikan "Module 7 Algoritma & Struktur Data (Binary Tree)"

Copied!
69
0
0

Teks penuh

(1)

Binary Tree

Teknik Informatika - Universitas Muhammadiyah Malang (UMM) Tahun Akademik 2010-2011

(2)

Sub Topik

Penjelasan Tree

Istilah pada tree

Binary Tree

Jenis Binary Tree

(3)
(4)

Real World

root

branches

(5)

Computer Scientist’s View

branches

leaves

root

(6)

Definisi

Kumpulan node yang saling terhubung

secara hirarki.

Hirarki = bertingkat.

Tiap node dapat berisi data dan link

(penghubung) ke node lainnya

Tiap node memiliki satu induk, kecuali

node root (akar) yang tidak memiliki induk.

Tiap node dapat memiliki anak dalam

(7)

Linked list dan Tree

Linked list  linear/serial data

Contoh : nama-nama mahasiswa dalam

satu kelas.

Tree  non linear/hierachically data

Contoh : tingkatan pegawai dalam

(8)

Contoh Tree

Mis. : Struktur organisasi sebuah

(9)

Contoh Tree

(10)

Contoh Tree

(11)

Tree (Pohon)

Root adalah node yang memiliki

hirarki tertinggi.

Subtree (pohon anak) adalah

(12)

Root and Subtrees

Object

Number Throwable OutputStream

Integer Double Exception FileOutputStream

RuntimeException

(13)

Tree (Pohon)

Level adalah posisi hirarki dari

sebuah node. Untuk root bisa diberikan level 0 atau 1.

Leaf (Daun) adalah node yang tidak

memiliki anak atau node yang

berada pada hirarki paling bawah.

Height (tinggi)/depth adalah jumlah

(14)

Leaves

Object

Number Throwable OutputStream

Integer Double Exception FileOutputStream

(15)

Node Degree

Object

Number Throwable OutputStream

Integer Double Exception FileOutputStream

RuntimeException

3

2 1 1

0 0 1 0

(16)

Level

Level 3

Object

Number Throwable OutputStream

Integer Double Exception FileOutputStream

RuntimeException

Level 4

Level 2 Level

1

Level 3

Level 4

(17)

17

Contoh Tree (Pohon)

Level 0

Level 1

Level 2

Level 3

(18)
(19)

Latihan

Ancestor (F)?

Descendant (B)? Parent (I)?

Child (C)? Sibling (G)? Size?

Height? Root? Leaf?

(20)

Tree (Pohon)

Dimana,

Ancestor (F) = C,A

Descendant (B) = D,E Parent (I) = H

(21)
(22)
(23)

Binary Tree

Tiap node pada binary tree hanya

boleh memiliki paling banyak dua child.

Sehingga hanya ada dua subtree pada

(24)

Tree dan Binary Tree

Pada binary tree nilai degree tidak

lebih dari 2, sedangkan pada tree tidak terbatas.

Sub tree pada binary harus terurut

(25)

Jenis Binary Tree

Berdasarkan subtree binary tree

dibedakan menjadi 4 jenis:

Full Binary Tree

Complete Binary Tree

Incomplete Binary Tree (Unbalanced

Tree)

(26)

Jenis Tree

(Full Binary Tree)

Semua node (kecuali leaf) memiliki nol

atau 2 anak dan tiap subtree memiliki panjang path yang sama.

(27)
(28)

Jenis Tree

(Complete Binary Tree)

Seluruh node sebelah kiri terisi

(29)

Complete Binary Tree

H

D K

B F J L

(30)

Incomplete Binary Tree

(31)

Jenis Tree

(Skewed Binary Tree)

Binary tree yang semua nodenya

(kecuali leaf) hanya memiliki satu anak.

Disebut juga minimum binary tree.

(32)

Binary Tree

(33)

Representation

Array representation

(34)

ADT BinaryTree

public interface BinaryTree {

public boolean isEmpty(); public Object root();

public void makeTree(Object root, Object left, Object right);

public BinaryTree removeLeftSubtree(); public BinaryTree removeRightSubtree(); public void preOrder(Method visit);

(35)
(36)

Struktur Data - Tree 36

Akses Elemen

Posisi node dapat ditentukan

berdasarkan rumus berikut :

Anak kiri dari node i berada pada indeks

: 2*i+1

Anak kanan dari node i berada pada

(37)
(38)
(39)
(40)
(41)

Class BinaryTreeNode

class BinaryTreeNode {

Object element;

BinaryTreeNode leftChild; // left subtree

BinaryTreeNode rightChild;// right subtree

// constructors and any other methods come here

(42)
(43)
(44)

Definisi

Penelusuran seluruh node pada

binary tree.

Metode :

Preorder

Inorder

Postorder

(45)

Preorder Traversal

(46)

PreOrder Traversal

Preorder traversal

1. Cetak data pada root

2. Secara rekursif mencetak seluruh data pada subpohon kiri

(47)

Preorder Example (visit =

print)

(48)

Preorder Example (visit =

print)

(49)

Preorder Of Expression Tree

Gives prefix form of expression!

(50)

Inorder Traversal

(51)

InOrder Traversal

Inorder traversal

1.Secara rekursif mencetak seluruh data pada subpohon kiri

2.Cetak data pada root

(52)

Inorder Example (visit =

print)

a

b c

(53)

Inorder Example (visit =

print)

(54)
(55)

Inorder Of Expression Tree

Gives infix form of expression (sans parentheses)!

e

(56)

Postorder Traversal

(57)

Postorder Traversal

Postorder traversal

1.Secara rekursif mencetak seluruh data pada subpohon kiri

2.Secara rekursif mencetak seluruh data pada subpohon kanan

(58)

Postorder Example (visit =

print)

a

b c

(59)

Postorder Example (visit =

print)

(60)

Postorder Of Expression

Tree

Gives postfix form of expression!

(61)

Traversal Applications

• Determine height.

(62)
(63)

Latihan

Telusuri pohon biner berikut dengan

(64)
(65)
(66)
(67)
(68)

PreOrder, PostOrder,

InOrder

• Pre-order :

Node, left, right

Ekspresi Prefix : ++a*bc*+*defg

Post-order :

Node, left, right

Ekspresi Postfix : abc*+de*f+g*+

In-order :

Node, left, right

(69)

Pustaka

Sartaj Sahni , “Data Structures &

Algorithms”, Presentation L20-24.

Mitchell Waite, “Data Structures &

Gambar

Gambar Binary Trees
Gambar aGambar b

Referensi

Dokumen terkait

Berdasarkan survei pendahuluan dari 20 sopir bus yang ada di Terminal Tirtonadi Surakarta baik sopir bus AKAP maupun sopir bus AKDP dengan menggunakan Nordic Body Map,

akhirnya bahan menjadi kering.Apabila bahan menjadi kering, mikroorganisme enggan melakukan aktivitasnya maka proses pembusukan pada bagian ini terhenti dan suhu

Paritas terbanyak pada pasien sectio caesarea adalah yang telah melahirkan lebih dari sekali, yaitu sebanyak 206 orang (69,4%).. Mayoritas pasien sectio caesarea adalah

Dokter memberikan nasihat dan meresepkan obat, salah satunya adalah tablet besi dengan dosis yang sesuai dengan kondisi pasien saat ini... Pasien tidak mengalami trauma atau

Jadi dapat disimpulkan bahwa tendangan ke arah badan mempunyai probabilitas yang signifikan terhadap peluang poin pada saat pertandingan cabang olahraga

Berdasarkan dari hasil uji aktivitas biokimia (Tabel 2) yang telah dilakukan sebelumnya, diperoleh hasil identifikasi jenis–jenis bakteri yang ditemukan di

Puji syukur kehadirat Allah SWT yang telah memberikan rahmat dan hidayahnya sehingga penulis dapat menyelesaikan Karya Tulis ilmiah yang berjudul “Penatalaksanaan fisioterapi

Dari penjelasan di atas dapat disimpulkan, bahwa perekonomian Negara Jepang mengalami dinamika yang sangat menarik untuk dicermati di mana Negara Jepang mengalami