Anda di halaman 1dari 20

KELOMPOK 4

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

02 AVL dan B-Tree

03 Binary Search Tree

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:

1. Tidak ada elemen duplikat dalam Binary Search Tree.

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

Beberapa contoh penerapan Binary Searh Tree pada aplikasi adalah :

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.

3. Binary Search Tree sebagai metode pencarian (searching) dalam kamus


Algoritma Binary Search Tree

Menginput data awal sebagai root yaitu 5 Menginput data 3

Menginput data 7 Menginput data 1


Binary Heap
Definisi Binary Heap

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

Anda mungkin juga menyukai