Matakuliah : T0026/Struktur Data Tahun : 2005 Versi : 1/1

Slides:



Advertisements
Presentasi serupa
STRUKTUR DATA (10) tree manipulation
Advertisements

Wibisono Sukmo Wardhono, ST, MT anyquestion?
Binary Trees adalah parent
Pertemuan 8 STRUKTUR POHON (TREE).
BAB 9 TREE Tujuan Instruksional Umum:
PERTEMUAN 14 POHON (TREE).
By : Fitroh Amaluddin & Galih Wasis W.
Algoritma dan Struktur Data
Algoritma dan Struktur Data
Disadur dari Materi Kuliah: Annisa, Dept. Ilmu Komputer FMIPA IPB
Algoritma dan Struktur Data
Algoritma dan Struktur Data
ADT Tree 2007/2008 – Ganjil – Minggu 8.
Tenia Wahyuningrum, S.Kom. MT
STRUKTUR DATA tree manipulation
1 Pertemuan Tree Matakuliah: T0026/Struktur Data Tahun: 2005 Versi: 1/1.
1 Pertemuan > > Matakuliah: >/ > Tahun: > Versi: >
Algoritma dan Struktur Data
Tree. Tree (Pohon) Dalam dunia nyata, sebuah pohon memiliki : akar, cabang, daun. Dalam dunia komputer, pohon (tree) memiliki 3 (tiga) bagian tersebut.
Red-Black Trees.
Pertemuan 10 Binary Search Tree
Matakuliah : T0534/Struktur Data Tahun : 2005 Versi : September 2005
1 Pertemuan 25 LC-Branch-And-Bound Matakuliah: T0034/Analisis & Perancangan Algoritma Tahun: 2005 Versi: 1/0.
Pertemuan 8 Stack dengan Array
Pertemuan 15 Red-Black Tree (RBT)
Organisasi Berkas Sekuensial Berindeks
1 Pertemuan 17 Heaps Matakuliah: T0026/Struktur Data Tahun: 2005 Versi: 1/1.
1 Pertemuan > > Matakuliah: > Tahun: > Versi: >. 2 Learning Outcomes Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu : >
1 Pertemuan 12 B-Tree Matakuliah: T0534/Struktur Data Tahun: 2005 Versi: September 2005.
File Indeks Majemuk Struktur File Indeks Majemuk
Struktur Data Tree Eka Rahayu S. (2 Agustus 2011).
POHON / TREE.
Binary Tree.
Defri Kurniawan POHON DAN POHON BINER Defri Kurniawan
TREE STRUCTURE (Struktur Pohon)
Matakuliah : K0074/Kalkulus III Tahun : 2005 Versi : 1/0
Diagram Pohon (Tree Diagram)
Manipulasi Tree.
TREE KELOMPOK 7 HUSNATUL WILDA ( ) MISRIANA ( )
Tim Struktur Data Program Studi Teknik Informatika UNIKOM
Tim Struktur Data Program Studi Teknik Informatika UNIKOM
STRUKTUR DATA Tree (Struktur Pohon).
Tree (POHON).
Tim Struktur Data Program Studi Teknik Informatika UNIKOM
NAMA : SITI HAJAR NIM : UNIT : B NO.HP :0852 –
STRUKTUR DATA 2014 M. Bayu Wibisono.
Tim Struktur Data Program Studi Teknik Informatika UNIKOM
POHON (TREE) Pertemuan 6.
Manipulasi Tree.
Tree.
Matakuliah : T0026/Struktur Data Tahun : 2005 Versi : 1/1
Algoritma dan Struktur Data
Pertemuan 6 Queue dengan Array
Tim Struktur Data Program Studi Teknik Informatika UNIKOM
Tree (Pohon).
POHON Pohon (Tree) merupakan graph terhubung tidak berarah dan tidak mengandung circuit. Contoh: (Bukan) (Bukan) (Bukan)
Oleh Shoffin Nahwa Utama, S.Kom
BINARY SEARCH TREE (BST)
IT234 Algoritma dan Struktur Data
Binary Search Tree (BST)
Tree.
IT234 Algoritma dan Struktur Data
AVL - Tree Defenisi : avl Tree adalah Binary Search Tree yang mempunyai ketentuan bahwa “Maksimum perbedaan height antara subtree kiri dan subtree kanan.
Algoritma dan Struktur Data
Binary Search Tree (BST)
HEAP Bella Wulan N. | Ester Prenatalia A. Mutiara Fitri T. | Risang Nihapsari Purwaning M.S KOMSI 2018 DEFINISI HEAP ALGORITMA HEAP.
IT234 Algoritma dan Struktur Data
TREE Oleh : Neny silvia Nurhidayah Afny wilujeng Setyorini
Binary Search Tree (BST)
Review Struktur Data Nisa’ul Hafidhoh, MT.
Transcript presentasi:

Matakuliah : T0026/Struktur Data Tahun : 2005 Versi : 1/1 Pertemuan 16 B-Tree

Learning Outcomes Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu : Mahasiswa dapat merumuskan program modular untuk mengimplementasikan ADT B-tree

pengertian dan kegunaan B-Tree Contoh B-Tree Operasi - operasi B-Tree Outline Materi pengertian dan kegunaan B-Tree Contoh B-Tree Operasi - operasi B-Tree implementasi program B-Tree

B-Tree Balanced Multiway Search Tree Data sangat banyak biasa disimpan di disk eksternal. Waktu akses disk lebih panjang. Perlu tree dengan height terbatas, dan node yang berisi beberapa data/key. Sekali akses node, membaca beberapa key sekaligus. Balanced Multiway Tree: tidak ada subtree kosong di atas leaf seluruh leaf berada dalam satu level (rata) tiap node mempunyai beberapa anak, kecuali leaf

B-Tree: Balanced Multiway Search Tree Kriteria B-Tree dengan orde m: Tiap node mempunyai subtree/child maksimal m, dengan notasi n, Ao, (K1, A1), (K2, A2), … , (Kn, An) A1 A0 A2 An K1 K2 … Kn N < m Ai : child I Ki < Key di node Ai < Ki+1 Kriteria ini berlaku untuk semua node di sembarang level

B-Tree: Balanced Multiway Search Tree Tiap node mempunyai child minimal m/2, kecuali ROOT minimal 2 Tiap node berisi key maksimal m-1 Tiap node berisi key minimal m/2, kecuali ROOT boleh kurang dari m/2 atau 0(empty) B-Tree dengan level tertinggi l, jumlah node dalam tree maksimal ml-1

20 10 15 20 25 B-tree: Contoh orde m=5 Root sebagai leaf Ascending order 20 10 15 20 25 Root sebagai leaf Jumlah key maksimal dalam satu node m-1 10 15 25 27 Jumlah key minimal dalam satu node m/2 20 10 15 25 27 57 63 79 80 81 95 99 20 40 78 90 Jumlah child maksimal m

B-Tree: Insert Tree tumbuh ke atas Algoritma Insert (newkey) Search leaf p yang sesuai untuk newkey Cek jumlah node di p If p not full (n< m-1), newkey langsung masuk, selesai If (n=m-1), SPLIT p menjadi 2, yaitu Node p: m/2-1, Ao, (K1,A1), …, (K m/2-1, A m/2-1) Node q: m-m/2, Am/2, (Km/2+1,Am/2+1), …, (K m, A m) (lihat notasi di slide 3) Dan key Km/2 masuk ke node parent p dan q. Cek apakah n<m-1 pada node parent (ulang langkah 2). SPLITing dapat ‘menjalar’ ke node-node ancestor.

Contoh Insert order 5 (1) Insert (k) a b g k f split a a b Insert (d) Insert (a) a Insert (b) a b Insert (d) a b d g k f Insert (f) a b f Insert (g) a b f g Insert (h) Insert (m) a b d g h k m f FULL ! n=m-1

Contoh Insert order 5 (2) a b d g h k m f a b d g h f j k m +j +e, +s, +i, +r a b d e g h i f j k m r s

Contoh Insert order 5 (3) a b d e g h i f j k m r s +x a b d e g h i f j r k m s x +c, +l, +n, +t, +u d e g h i c f j r k l m n s t u x a b

Contoh Insert order 5 (4) d e g h i c f j r k l m n s t u x a b +p d e n p m r j

Search key x yang akan di-delete B-Tree: Delete (1) Algoritma: Search key x yang akan di-delete If x berada pada node bukan leaf, maka x akan diganti oleh salah satu key pada leaf descendant, key terkecil atau terbesar (ikut aturan binary tree), menjadi problem delete key di leaf Cek target leaf p If p merupakan ROOT, If n>1, langsung delete x If n=1, tree menjadi empty

If p bukan root If n(p)>m/2: langsung delete B-Tree: Delete (2) If p bukan root If n(p)>m/2: langsung delete If n(p)=m/2: cek jumlah key di node sibling terdekat kiri atau kanan (node q) If jumlah key q diatas minimum n(q)>m/2: rotasi key (yang melibatkan 3 node: q, parent dan p) Hasil rotasi, jumlah key di q menjadi n(q)-1, jumlah key di p setelah dilete menjadi m/2 If jumlah key q minimum n(q)=m/2: p dan q gabung (melibatkan satu key di parent) Hasil gabung setelah delete, jumlah node n(p)=m-1 Cek jumlah key di node parent (ulang langkah b). Rotasi atau penggabungan dapat ‘menjalar’ ke node-node ancestor pada path menuju Root.

Contoh Delete (1) -h, -r d e g h i c f k l s t u x a b n p m r j m s g i t u x n>m/2 Digantikan key dari leaf

Contoh Delete (2) Jumlah key = m/2 : rotasi d e g i c f k l t u x a b n p m s j -p n s m t u x

Contoh Delete (3) Jumlah key = m/2, tetapi jumlah key di sibling terdekat juga minimum (m/2): gabung d e g i c f k l u x a b n s m t j -d a b c e f j m t a b c e g i k l u x n s f j m t