Top Banner
Algoritma Struktur Data 3 sks By. Sri Rezeki Candra Nursari
108

Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Jan 20, 2021

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Algoritma Struktur Data3 sks

By. Sri Rezeki Candra Nursari

Page 2: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

MateriMateriPengantar Struktur Data

Abstract Data Type (ADT)

Rekursif : Fibonacci

Sorting (Selection, Insertion, Bubble, Shell, Merge, Quick)

Struktur Data Linier (Linked List, Stack, Queu)

Struktur Data Hirarki (Tree, Graph, Hash Tables)

Search (Sequential, Fibonacci, Interpolation, Binary)

Page 3: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Literatur :1. H.M Deitel, P.J Deitel, Small Java How to Program-sixth

Edition, Pearson Prentice Hall, 20052. Elliot B. Koffman, Paul A.T. Wolfgang, Objects, Abstraction,

Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005

3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley, 1999

4. Moh.Sjukani, Algoritma & Struktur Data dengan C, C++ dan Java, Mitra Wacana Media, Agustus 2005

5. Andri Kristanto, Struktur Data dengan C, Graha Ilmu, 20036. Bambang Wahyudi, Pengantar Struktur Data dan Algoritma,

Andi, 20047. Ema Utami, Struktur Data, Graha Ilmu, 20078. Yatini B, Indra, Pemrograman Terstruktur, J&J Learning

Yogyakarta, 20019. Wirth, Niklaus, Algorithmic + Data Structures Programs,

Prentice-Hall, 197610. Thompson Susabda Ngoen , Algoritma dan Struktur Data

Bahasa C, Mitra Wacana Media, 2009

ALGORITMA ALGORITMA STRUKTUR STRUKTUR DATADATA -- 33 sks sks

Page 4: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

TREE - POHON

Pertemuan 09

Page 5: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

TREE - POHON• Tree merupakan salah satu bentuk

struktur data yang non linear/tidak linear yang menggambarkan hubungan yang bersifat hirarki (hubungan one to many) antara elemen-elemen

• Tree dapat juga didefinisikan sebagai kumpulan simpul/node dengan satu elemen khusus yang disebut ROOT dan node yang lainnya terbagi menjadi himpunan-himpunan yang saling tak berhubungan satu sama lain (disebut SUBTREE)

Page 6: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Istilah Umum Dalam TREE1. Tree (pohon) dan Graph (Graf)2. Simpul (Vertex, Node) dan Busur

(Edge, Arc)3. Superordinat dan subordinat, father

dan son, parent dan children4. Root (akar) dan Leaf (daun)5. Level (tingkat) dan Depth (kedalaman)6. Degree (derajat) simpul dan degree

pohon7. M-ary tree dan binary tree8. Link dan null-link

Page 7: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

1. Tree/Pohon & Graph/Graf

• Tree (pohon) merupakan bagian dari graph

• Dengan simbol matematik pernyataan Tree dapat dituliskan sebagai berikut :

T = G

Page 8: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

2. Simpul & Busur

• Pohon merupakan kumplan dari simpul dan busur, dimana salah satu simpul merupakan akar (root) dan simpul-simpul lain membentuk suatu sub pohon / sub tree yang dapat dituliskan sbb:

T = (V, E)V = vertex/node/titik/simpulE = edge/arc/busur

Page 9: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

2. Simpul & Busur

• Simpul/Node/Titik/Vertex– Tree terdiri dari 14 buah

simpul (n=14) simpul A s.d. N atau v0 s.d. v13

V = {v0, v1, v2....... , v13)

• Busur/Edge– Tree terdiri dari 13 buah

busur (m=12) e0 s.d. e12E = {e0, e1, e2....... , e12)

Page 10: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

3. Superordinat & Subordinat

• Superordinatdiistilahkan dengan father/bapak/parent sedangkan subordinat diistilahkan dengan son/anak/child

• Contoh:– Simpul B merupakan

superordinat simpul E dan F– Simpul E dan F merupakan

subordinat simpul B– Simpul B mempunyai

superordinat yaitu simpul E (left child) dan F (right child)

• Parent : predecessor satu level di atas suatu node

• Child : successor satu level di bawah suatu node

Page 11: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

4. Root/Akar & Leaf/Daun

• Root (akar) adalah simpul yang tidak mempunyai superordinat.– Untuk pohon yang dicontohkan

disamping, maka akar adalah simpul A– Root : Satu-satunya node khusus

dalam tree yang tak punya predecessor

• Leaf/daun adalah simpul yang tidak mempunyai subordinat– Untuk pohon yang dicontohkan

disamping, maka daun adalah simpul C, E, G, I, J, K, L, M, N

– Leaf : Node-node dalam tree yang tidak memiliki successor

Page 12: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

5. Level & Depth/Kedalaman

• Level (tingkat) akar dinyatakan berada pada level 0, setiap turunan satu subordinat, level bertambah 1

• Depth (kedalaman) satu pohon yang mempunyai level teratas atau level tertinggi = k, maka disebut kedalamannya = k– Untuk pohon yang

dicontohkan disamping, karena level tertinggi adalah 3 maka depth =3

• Height : Banyaknya tingkatan/level dalam suatu tree

Page 13: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

6. Degree sebuah simpul

• Degree merupakan sebuah simpul yang menyatakan jumlah simpul subordinat dari simpul tersebut– Untuk pohon

disamping :• Simpul A : degree = 3• Simpul B : degree = 2• Simpul C : degree = 0

• Degree: Banyaknya child yang memiliki suatu node

Page 14: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

istilah-istilah umum dalam tree

• Predecessor: node yang berada di atas node tertentu

• Successor : node yang berada di bawah node tertentu

Page 15: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

istilah-istilah umum dalam tree

• Ancestor : seluruh node yang terletak sebelum node tertentu dan terletak pada jalur yang sama

• Descendant : seluruh node yang terletak sesudah node tertentu dan terletak pada jalur yang sama

• Sibling : node-node yang memiliki parent yang sama dengan suatu node

• Size :Banyaknya node dalam suatu tree

Page 16: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Ancestor (F) = ADescendant (A) = F,G & D,EParent (D) = BChild (A) = B,CSibling (F) = GSize = 7Height = 3Root = ALeaf = D,E,F,G

A

BC

D E F G

Page 17: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Ancestor (F) = ……Descendant (C) = ….Parent (D) = ….Child (A) = …..Sibling (F) = ….Size = ….Height = ….Root = …..Leaf = ……Degree:

Simpul A = …. Simpul B = .....Simpul C = …. Simpul D = .....Simpul E = …. Simpul F = .....Simpul G = ......

Level = ............Depth = .................

A

BC

D E F G

H IJ

Page 18: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Root/Akar = …..Leaf/Daun = ……Degree

Simpul ......, Degree = ....Simpul ......, Degree = ....etc......

Superordinat/Parent = ….Subordinat/Child

Simpul ......, Child = ....Simpul ......, Child = ....etc......

Node/Vertex/Titik/Simpul = ….Busur/Edge/Arc = ….Level = ......Height /Depth/Kedalaman = ….Ancestor (G) / Ancestor (7) = .....Descendant (G) / Descendant (7) = .....Sibling (F) / Sibling (3) = ......Size = .....

A

BC

D E F G

H IJ

Page 19: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

7a. M-ary Tree

• M atau K menyatakan derajat pohon• Contoh : sebuah simpul pohon M-ary

dimana M=3 digambarkan dengan Linked-List

INFO

Link1 Link2 Link3

Page 20: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

7b. Binary Tree

• M atau K menyatakan derajat pohon• Contoh : sebuah simpul pohon Binary Tree /

Pohon Biner dimana M=2 digambarkan dengan Linked-List

INFO

Link1 Link2

Page 21: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Contoh Pohon BinerA

B C

D E F G

H

Page 22: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

8. Link, Null-Link dan Bukan Null-Link• Link

– Pointer yang digunakan untuk menunjuk simpul subordinat– Untuk contoh pohon biner adalah setiapsimpul mempynyai 2

link, sehingga jumlah link = n*2

• Null-Link– Link yang bernilai Null, yaitu link yang tidak menunjuk simpul

subordinat

• Bukan Null-Link– Link yang menunjuk simpul subordinat atau link yang

menghubungkan dua buah simpul yang biasanya disebut dengan busur

Page 23: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Contoh Soal : M-ary• Sebuah pohon M-ary dengan 10 buah

simpul. Apabila M=3, Hitung berapa jumlah Null-Link nya?

Pohon dengan M = 3Jumlah simpul 10,

maka n = 10

Jumlah Null-Link = n * (M-1) + 1= 10 * (3-1) +1= 10*2+1= 21

A

B CD

E FG

H

J

I

Page 24: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Contoh Soal : Pohon Biner

• Sebuah pohon biner dengan 10 buah simpul. Apabila M=2, Hitung berapa jumlah Null-Link nya?

Pohon dengan M = 2Jumlah simpul 10,

maka n = 10

Jumlah Null-Link = n * (M-1) + 1= 10 * (2-1) +1= 10*1+1= 11

A

BC

D EH

F

IG

J

Page 25: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

BINARY TREE – POHON BINER

Page 26: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

POHON BINER / BINARY TREE

• Sebuah pohon biner/binary tree adalah merupakan himpunan terbatas yang – Mungkin kosong– Terdiri dari sebuah simpul yang disebut sebagai akar dan

dua buah himpunan lain yang saling asing– Dia humpunan yang saling asing tersebut adalah pohon

biner pada sub pohon kiri (left) dan sub pohon kanan (right)

– Tergolong dalam pohon beraturan, yaitu pohon yang memperhatikan urutan hubungan antara satu simpul dengan simpul lain, dalam hal ini cabang kiri dibedakan dengan cabang kanan

Page 27: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

POHON BINER / BINARY TREE

• Merupakan pohon M-ary dimana M=2, yang artinya setiap simpul paling banyak memiliki 2 simpul subordinat yang biasa disebut subordinat kiri (left-child) dan subordinat kanan (right-child)

INFOLeft Right

INFOLeft Right

Father

Page 28: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

POHON BINER / BINARY TREE• Strictly Binary Tree merupakan pohon biner yang

semua simpulnya, (kecuali simpul leaf/daun) mempunyai lengkap simpul subordinat kiri dan subordinat kanan

• Sebuah pohon biner strictlybinary tree, apabila mempunyai n buah daun, maka akan mempunyai (2n-1) buah simpul

A

B C

D E F G

H I

Jumlah daun/leaf = 5

Jumlah simpul = 2 *n - 1= 2 * 5 - 1= 9

Page 29: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

COMPLETE BINARY TREE/FULL BINARY TREE/ ALMOST COMPLETE BINARY TREE

• Complete Binary Tree dengan kedalaman = d, merupakan pohon biner strictly binary treedimana semua daun hanya berada pada level d

• Pada pohon complete binary tree/full binary tree/almost complete binary tree berlaku : – Pada leve k jumlah simpul n=2^k– Untuk pohon dengan kedalaman d, maka jumlah seluruh

simpul n = 2^(d+1)-1– Untuk pohon dengan kedalaman d, maka jumlah simpul

daun n = 2^d

Page 30: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

COMPLETE BINARY TREE/FULL BINARY TREE/ ALMOST COMPLETE BINARY TREE

• Pada pohon complete binary tree/full binary tree/almost complete binary tree berlaku : – Untuk pohon dengan kedalaman d, maka jumlah simpul

bukan daun n = (2^d)-1– Bila jumlah seluruh simpul = n, maka kedalaman pohon

adalah d = log2(n+1)-1– Setiap simpul yang berada dibawah level d-1,

mempunyai dua subordinat– Bila pada level d-1 sub pohon kanan ada simpul yang

mempunyai subordinat, maka setiap simpul pada level d-1 subpohon kiri harus mempunyai subordinat kiri dan kanan

Page 31: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

COMPLETE BINARY TREE/FULL BINARY TREE/ ALMOST COMPLETE BINARY TREE

Almost Complete Binary Tree dan Bukan Strictly Binary Tree karena simpul G hanya punya satu anak

A

B C

D E F G

J KH I L M N

Almost Complete Binary Tree dan Strictly Binary Tree

A

B C

D E F G

J KH I L M N O

Page 32: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

COMPLETE BINARY TREE/FULL BINARY TREE/ ALMOST COMPLETE BINARY TREE

Bukan Almost Complete Binary Treekarena simpul C hanya punya satu anak

A

B C

D E F

J KH I

Bukan Almost Complete Binary Tree

A

B C

D E F G

H

Almost Complete Binary Tree dan tapi bukan Strictly Binary Tree

A

B C

D E F G

H I L M

Page 33: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

POHON BINER SEIMBANG –BALANCED BINARY TREE (AVL)

Page 34: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

POHON BINER SEIMBANG - AVL

• AVL diambil dari nama G.M. Adelson-Velskii dan E.M. Landis, 2 orang ahli matematika Rusia yang pertama kali (1962) memperkenalkan metode untuk membuat pohon biner selalu seimbang

• Pohon Biner Seimbang / Berimbang adalah pohon biner yang ketinggian subpohon kiri dan subpohon kanan untuk setiap simpul superordinat, paling banyak berselisih 1

• Jadi pohon biner complete dan almost complete adalah pohon biner berimbang

• Pohon miring/skewed dengan ketinggian /depth lebih besar dari 1 adalah pohon biner tak seimbang

Page 35: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

CONTOH : BALANCED BINARY TREE UNBALANCED BINARY TREE

Unbalanced Binary Tree

A

B C

D E F G

J KH I L M N

Balanced Binary Tree

A

B C

D E F G

J KH I L M N O

Page 36: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

PENOMORAN SIMPUL POHON BINER• Berdasarkan konversi dapat disepakati cara

penomoran setiap simpul dalam pohon biner, yaitu:– Bila sebuah simpul bernomor n, maka subordinat kiri

bernomor 2n dan subordiat kanan bernomor 2n+1– Simpul akar, diberi nomor 1

A

B C

1

2 3A

B C

n

2n 2n+1G

H I

5

10 11

Page 37: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

PENOMORAN SIMPUL POHON BINER

Level(k)

Maksimum jumlah simpul pada level2^k

Maksimum jumlah seluruh simpul sampai dengan level

2^(k+1)-1

0 1 1

1 2 3

2 4 7

3 8 15

4

5

6

7

8

9

10 1024 2047

Page 38: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

BINARY TREE/POHON BINER

• Proses Pohon Biner (Binary Tree), adalah 1. Mendeklarasikan struktur simpul2. Inisialisasi3. Pembuatan sebuah simpul4. Pembuatan simpul akar5. Penambahan/melakukan insert simpul

baru kedalam sebuah pohon6. Pembacaan/penelusuran pohon biner

Page 39: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

BINARY TREE/POHON BINER• Proses Pohon Biner (Binary Tree), adalah

1. Deklarasi struktur simpul

2. Inisialisasi

.

Page 40: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

BINARY TREE/POHON BINER• Proses Pohon Biner (Binary Tree), adalah

3. Pembuatan sebuah simpul

Page 41: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

BINARY TREE/POHON BINER

• Proses Pohon Biner (Binary Tree), adalah 4. Pembuatan simpul Akar

Page 42: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

BINARY TREE/ POHON BINER

• Proses Pohon Biner (Binary Tree), adalah 5. Penambahan

/melakukan insert simpul baru kedalam sebuah pohon

Page 43: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

BINARY TREE/POHON BINER

• Proses Pohon Biner (Binary Tree), adalah 6. Pembacaan/pene

lusuran pohon biner

Page 44: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

HEAP & B-TREE

Pertemuan 11

Page 45: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

HEAP TREE

Heap adalah tree yang mempunyai persamaan sebagai berikut:

R[i] < r[2i] dan R[i] < r[2i+1] Heap Tree disebut juga Complete Binary Tree,

jika suatu node mempunyai child, maka jumlah childnya harus selalu dua

Minimum Heap, apabila parentnya lebih kecil daripada kedua childnya

Maksimum Heap, apabila parentnya lebih besar daripada kedua childnya

Page 46: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

HEAP TREE

Page 47: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Contoh HEAP TREE

9

12 25

22 55

MINIMUM HEAP TREE

Page 48: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Contoh HEAP TREE

63

55 25

22 9

MAKSIMUM HEAP TREE

Page 49: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

HEAP-TREE

• Operasi dalam Heap Tree) 1. Penambahan/melakukan insert simpul2. Penghapusan/melakukan Delete simpul

Page 50: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

HEAP-TREE

• Operasi dalam Heap Tree) 1. Penambahan/melakukan insert simpul

Page 51: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Insertion

• Insert 2 (Percolate Up)

40 42

-1

0 1

43 5 3 8

65 58 4 2

0 1 43 5 3 8 65 58 40-1 42 40 1 2 3 4 5 6 7 8 9 10 11 12 13 14

231-1

Page 52: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Insertion• Insert 2 (Percolate Up)

40 42

-1

0 1

43 5 2 8

65 58 4 3

0 1 43 5 3 8 65 58 40-1 42 40 1 2 3 4 5 6 7 8 9 10 11 12 13 14

321-1

Page 53: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Insertion

• Insert 14

14

13

21 16

24 31 19 68

65 26 32

Page 54: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Insertion

• Insert 14

31

13

21 16

24 14 19 68

65 26 32

Page 55: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Insertion

• Insert 14

31

13

14 16

24 21 19 68

65 26 32

Page 56: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

HEAP-TREE

• Operasi dalam Heap Tree) 2. Penghapusan/melakukan Delete simpul

Page 57: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

0 1 43 3 3 2 65 58 40-1 42 40 1 2 3 4 5 6 7 8 9 10 11 12 13

-1

0 1

43 3 3 2

65 58 40 42 4

14

Delete Minimum• Percolate Down

Page 58: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

0 1 43 3 3 2 65 58 404 420 1 2 3 4 5 6 7 8 9 10 11 12 13

4

0 1

43 3 3 2

65 58 40 42

14

Delete Minimum

Page 59: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

3 1 43 4 3 2 65 58 400 420 1 2 3 4 5 6 7 8 9 10 11 12 13

0

3 1

43 4 3 2

65 58 40 42

14

Delete Minimum: Completed

Page 60: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

13

14 16

19 21 19 68

65 26 32 31

Delete Min (Alternative)

Page 61: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

14 16

19 21 19 68

65 26 32 31

Delete Min (Alternative)

• Percolate Down

Page 62: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Delete Min (Alternative)

14

16

19 21 19 68

65 26 32 31

Page 63: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

14

19 16

21 19 68

65 26 32 31

Delete Min (Alternative)

Page 64: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Delete Min (Alternative)

14

19 16

26 21 19 68

65 32 31

Page 65: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Delete Min (Alternative)

14

19 16

26 21 19 68

65 31 32

Page 66: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

B-TREE

B-Tree adalah tree yang setiap nodenya dapat berisi lebih daripada satu elemen

Jumlah elemen dalam 1 node tergantung kepada order B-Tree tersebut

Jumlah minimum elemen dalam setiap node (kecuali ROOT) adalah d, dan jumlah maksimum elemen di ROOT adalah satu dan jumlah maksimumnya adalah 2d

Jumlah minimum child suatu node di dalam B-Tree adalah 0, dan jumlah maksimumnya adalah jumlah elemen +1

Page 67: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

B-TREE

• Operasi dalam Pohon B (B- Tree) 1. Penambahan/melakukan insert simpul2. Penghapusan/melakukan Delete simpul

Page 68: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

B-TREE

• Operasi dalam Pohon B (B- Tree)1. Insert Apabila node/simpul belum penuh (jumlah

elemen < 2d), maka elemen dapat langsung diinsert

Jika node/simpul sudah penuh, maka lakukan NODE SPLIT dengan langkah sebagai berikut Split node/simpul menjadi 2 25 37 40 Akan menginsert elemen 27

Letakkan d elemen terkecil di node/simpul kiri Letakkan d elemen terkecil di node/simpul kanan Letakkan elemen tengah ke node/simpul parentnya

Page 69: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

B-TREE• Operasi dalam Pohon B (B- Tree)

2. Delete Jika target node/simpul yang akan dihapus berisi elemen lebih dari

d, maka target elemen dapat langsung dihapus, tanpa harus di regenerate

Contoh : Split node/simpul 10 Root 5 6 7 15 16 18 delete 6 5 7 15 16 18

Jika target node/simpul yang akan dihapus berisi d node/simpul, penghapusan akan menyebabkan underflow, maka regenerate dilakukan dengan meminjam elemen yang berada di node/sim;ul kiri atau kanan (yang memiliki elemen lebih dari d). Parent/separator akan berubah

Contoh : Split node/simpul 10 20 Root 5 7 9 15 16 25 26 delete 15 9 20 Root 5 7 10 15 16 25 26

Page 70: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

B-TREE

• Operasi dalam Pohon B (B- Tree)2. Delete Jika node/simpul kiri maupun kanan yang akan

dilakukan peminjaman ternyata mempunyai elemen kurang dari d, jika dilakukan peminjaman node/simpul tersebut akan terjadi underflow, maka regenerate akan dilakukan dengan menggabung node/simpul yang akan dihapus dengan node/simpul kiri yang akan dihapus dengan node/simpul di kiri/kanan

Contoh : Split node/simpul 9 20 Root 5 715 16 25 27 delete 15 20 Root 5 7 9 16 25 27

Page 71: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

B-TREE

Page 72: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

B-TREE

Page 73: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

B-TREE

Page 74: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

B-TREE

Page 75: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap SortSeperti metode struktur organisasi,nilai ditukarkan dari root ke level yang paling rendah

Page 76: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Max/DescendingA: [ 23,17,14,6,13,10,1,5,7, 12]

23

17 14

6 13 10 1

5 7 12

Page 77: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Max/DescendingA: [ 23,17,14,6,13,10,1,5,7, 12]

23

17 14

6 13 10 1

5 7 12

i=5

i=5

Page 78: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Max/DescendingA: [ 23,17,14,6,13,10,1,5,7, 12]

23

17 14

7 13 10 1

5 6 12

i=4

i=4

Page 79: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Max/DescendingA: [ 23,17,14,6,13,10,1,5,7, 12]

23

17 14

7 13 10 1

5 6 12

i=3

i=3

Page 80: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Max/DescendingA: [ 23,17,14,6,13,10,1,5,7, 12]

23

17 14

7 13 10 1

5 6 12

i=2

i=2

Page 81: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Max/DescendingA: [ 23,17,14,6,13,10,1,5,7, 12]

23

17 14

7 13 10 1

5 6 12

i=1i=1

Page 82: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Max/DescendingA: [ 23,17,14,6,13,10,1,5,7, 12]

17

13 14

7 12 10 1

5 6 23

Page 83: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Max/DescendingA: [ 23,17,14,6,13,10,1,5,7, 12]

14

13 10

7 12 6 1

5 17 23

Page 84: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Max/DescendingA: [ 23,17,14,6,13,10,1,5,7, 12]

13

12 10

7 5 6 1

14 17 23

Page 85: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Max/DescendingA: [ 23,17,14,6,13,10,1,5,7, 12]

12

7 10

1 5 6 13

14 17 23

Page 86: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Max/DescendingA: [ 23,17,14,6,13,10,1,5,7, 12]

10

7 6

1 5 12 13

14 17 23

Page 87: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Max/DescendingA: [ 23,17,14,6,13,10,1,5,7, 12]

7

5 6

1 10 12 13

14 17 23

Page 88: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Max/DescendingA: [ 23,17,14,6,13,10,1,5,7, 12]

6

5 1

7 10 12 13

14 17 23

Page 89: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Max/DescendingA: [ 23,17,14,6,13,10,1,5,7, 12]

1

5 6

7 10 12 13

14 17 23

Page 90: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Max/DescendingA: [ 23,17,14,6,13,10,1,5,7, 12]

1

5 6

7 10 12 13

14 17 23

Page 91: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Min/AscendingA: [ 8,17,14,6,13,10,1,5,7, 12]

8

17 14

6 13 10 1

5 7 12

Page 92: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Min/AscendingA: [ 8,17,14,6,13,10,1,5,7, 12]

8

17 14

6 13 10 1

5 7 12

i=5

i=5

Page 93: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Min/AscendingA: [ 8,17,14,6,13,10,1,5,7, 12]

8

17 14

6 12 10 1

5 7 13

i=4

i=4

Page 94: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Min/AscendingA: [ 8,17,14,6,13,10,1,5,7, 12]

8

17 14

5 12 10 1

6 7 13

i=3i=3

Page 95: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Min/AscendingA: [ 8,17,14,6,13,10,1,5,7, 12]

8

17 1

5 12 10 14

6 7 13

i=2i=2

Page 96: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Min/AscendingA: [ 8,17,14,6,13,10,1,5,7, 12]

8

5 1

17 12 10 14

6 7 13

i=1i=1

Page 97: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Min/AscendingA: [ 8,17,14,6,13,10,1,5,7, 12]

1

5 8

17 12 10 14

6 7 13

Page 98: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Min/AscendingA: [ 8,17,14,6,13,10,1,5,7, 12]

5

12 8

17 13 10 14

6 7 1

Page 99: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Min/AscendingA: [ 8,17,14,6,13,10,1,5,7, 12]

5

12 8

17 13 10 14

6 7 1

Page 100: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Min/AscendingA: [ 8,17,14,6,13,10,1,5,7, 12]

7

12 8

17 13 10 14

6 5 1

Page 101: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Min/AscendingA: [ 8,17,14,6,13,10,1,5,7, 12]

7

12 8

17 13 10 14

6 5 1

Page 102: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Min/AscendingA: [ 8,17,14,6,13,10,1,5,7, 12]

8

12 14

17 13 10 7

6 5 1

Page 103: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort-Min/AscendingA: [ 8,17,14,6,13,10,1,5,7, 12]

10

12 14

17 13 8 7

6 5 1

Page 104: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Min/AscendingA: [ 8,17,14,6,13,10,1,5,7, 12]

12

13 14

17 10 8 7

6 5 1

Page 105: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort-Min/AscendingA: [ 8,17,14,6,13,10,1,5,7, 12]

13

17 14

12 10 8 7

6 5 1

Page 106: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort -Min/AscendingA: [ 8,17,14,6,13,10,1,5,7, 12]

14

17 13

12 10 8 7

6 5 1

Page 107: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,

Heap Sort-Min/AscendingA: [ 8,17,14,6,13,10,1,5,7, 12]

17

14 13

12 10 8 7

6 5 1

Page 108: Algoritma Struktur Data...2018/06/09  · Data Structures and Design Using Java, John Wiley & Sons.Inc, 2005 3. Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley,