ANGGO
TA
01
Andi Muhammad
02
Ruswantom 03 04
o Muhammad Fazry Muhammad Dwi Refansyah
Rivaldy Aljidannur Suhada
2109116097 2109116118 2109116099 2109116113
TOPIK PEMBAHASAN
01 Abstack Data Type
04 Binary Heap
Abstract Data Type
Abstract Data Type
Abstract Data Type (ADT) adalah suatu tipe data dari sebuah bahasa pemrograman yang memiliki
sematik yang sama. Tipe data abstrak juga dikenal dengan tipe data bentukan. Umumnya, tipe data
abstrak didefinisikan melalui operasi matematis tertentu sehingga membutuhkan penggunaan tipe data
tersebut meski dengan resiko kompleksitas yang lebih tinggi atas operasi tersebut.
Contoh Tipe Data Abstak
1. Stack
Stack merupakan struktur data yang mengimplementasi dari aturan LIFO (Last In First
Out). Jadi elemen yang dimasukan terakhir berada di atas (top).
2. Queue
Queue (Antrian) adalah suatu kumpulan data yang mana penambahan data / elemen
hanya dapat dilakukan pada sisi belakang sedangkan penghapusan / pengeluaran
elemen dilakukan pada sisi depan.
3. Linked List
Linked List adalah suatu cara untuk menyimpan data dengan struktur sehingga
programmer dapat secara otomatis menciptakan suatu tempat baru untuk menyimpan
data kapan saja diperlukan.
AVL Tree & B-Tree
AVL Tree adalah Binary Search Tree yang memiliki perbedaan tinggi/ level maksimal 1 antara subtree kiri dan
subtree kanan. AVL Tree muncul untuk menyeimbangkan Binary Search Tree
AVL Tree ditemukan oleh Adelson-Velskii dan Landis. AVL Tree merupakan salah satu jenis BST (binary Search
Tree). BST digunakan dengan tujuan untuk mempercepat pencarian data. Apabila BST yg terbentuk cukup seimbang
(mendekati complete binary tree) maka waktu pencarian data tidak lebih dari log2n langkah.
Kasus AVL Tree
Single Rotation :
Jika suatu Tree diinsert node baru dengan nilai 12, maka akan terjadi ketidak
seimbangan dan hal ini terletak pada posisi root
Definisi B-Tree
B-tree adalah pohon M-way seimbang dan juga dikenal sebagai pohon sortir
seimbang. Ini mirip dengan pohon pencarian biner di mana node diatur berdasarkan
inorder traversal
Jika sebuah simpul internal memiliki tiga simpul anak (atau subpohon) maka
simpul tersebut pasti meiliki dua nilai berbeda atau elemen a1 dan a2. Semua nilai
di paling kiri subpohon lebih kecil dari a1, semua nilai di subpohon tengah akan
berada di antara a1 dan a2, dan semua nilai di paling kanan subpohon akan lebih
besar dari a2.
Kasus B-Tree
B-Tree orde 5
Maksudnya adalah (selain dari simpul akar) semua simpul internal memiliki paling
sedikit 5/2= 2.5 = 3 (pembulatan) anak dan paling sedikit 2 kunci. Tentu saja
maksimum jumlah anak yang bisa dimiliki sebuah simpul adalah 5 dan maksimum
jumlah kuncinya 4
Binary Search Tree
Definisi Binary Search Tree
Binary Search Tree adalah struktur data yang mengadopsi konsep Binary Tree namun terdapat aturan
bahwa setiap child node sebelah kiri selalu lebih kecil nilainya dari pada root node. Begitu pula sebaliknya,
setiap child node sebelah kanan selalu lebih besar nilainya daripada root node.
Binary Search Tree adalah struktur data Binary Tree dengan properti berikut:
2. Elemen di anak kiri sebuah node selalu lebih kecil dari elemen di node saat ini.
3. Subpohon kiri dari sebuah node memiliki semua elemen yang kurang dari node saat ini.
4. Elemen di anak kanan sebuah node selalu lebih besar dari elemen di node saat ini.
5. Subtree kanan dari sebuah node memiliki semua elemen yang lebih besar dari node saat ini.
Contoh Penerapan Binary Search Tree pada Aplikasi
1. Membangun daftar vocabulary yang merupakan bagian dari inverted index (sebuah struktur data yang
digunakan oleh banyak mesin pencari seperti Google.com, Yahoo.com dan Ask.com)
2. Banyak digunakan dalam bahasa pemrograman untuk mengelola dan membangun dynamic sets.
Heap adalah stuktur data yang berbentuk pohon yang memenuhi sifat – sifat heap
yaitu jika B adalah anak dari A, maka nilai yang tersimpan di simpul A lebih besar
atau sama dengan nilai yang tersimpan di simpul B. Seperti halnya binary search
tree, AVL tree.
Jenis – Jenis Binary Heap
a) Binary Heap
Heap yang dibuat dengan menggunakan pohon biner.
b) Binomial Heap
Heap yang dibuat dengan menggunakan pohon binomial. Pohon binomial bila didefiniskan secara rekursif
adalah :
Sebuah pohon binomial dengan tinggi 0 adalah simpul tunggal
Sebuah pohon binomial dengan tinggi k mempunyai sebuah simpul akar yang anak – anaknya adalah akar – akar
pohon pohon binomial.
c) Fibonacci Heap
Fibonacci Heap adalah kumpulan pohon yang membentuk minimum heap. Pohon dalam struktur data ini tidak
memiliki bentuk tertentu dan pada kasus heap ini memiliki semua elemen dalam pohon yang berbeda atau
sebuah pohon tunggal dengan tinggi keunggulan dari Fibonacci heap ketika menggabungkan heap cukup dengan
menggabungkan dua list pohon.
Algoritma Min-Heap & Max-Heap
• Max Heap mempunyai ketentuan bahwa nilai suatu node lebih besar atau sama
( >= ) dari nilai childnya.
• Min Heap mempunyai ketentuan bahwa nilai suatu node lebih kecil atau sama
dengan ( <= ) dari nilai childnya.
THANKYOU