Algoritma dan Struktur Data

Slides:



Advertisements
Presentasi serupa
Teori Graf.
Advertisements

Struktur Data Departemen Ilmu Komputer FMIPA-IPB 2009
TURUNAN/ DIFERENSIAL.
STRUKTUR DATA (10) tree manipulation
Pengendalian Proses : Seleksi (Conditional)
Menunjukkan berbagai peralatan TIK melalui gambar
Mata Kuliah Teknik Digital TKE 113
Menempatkan Pointer Q 6.3 & 7.3 NESTED LOOP.
Tugas Praktikum 1 Dani Firdaus  1,12,23,34 Amanda  2,13,24,35 Dede  3,14,25,36 Gregorius  4,15,26,37 Mirza  5,16,27,38 M. Ari  6,17,28,39 Mughni.
Suku ke- n barisan aritmatika
Binary Trees adalah parent
Soal-Soal Latihan Mandiri
- PERTEMUAN 11 - SORTING (PENGURUTAN)
Matematika Diskrit Suryadi MT Tree.
LINKED LIST.
Uji Non Parametrik Dua Sampel Independen
Linked List BEBERAPA CONTOH SOAL 6.3 & 7.3 NESTED LOOP.
ASIKNYA BELAJAR MATEMATIKA
TURUNAN DIFERENSIAL Pertemuan ke
By : Fitroh Amaluddin & Galih Wasis W.
Rabu 23 Maret 2011Matematika Teknik 2 Pu Barisan Barisan Tak Hingga Kekonvergenan barisan tak hingga Sifat – sifat barisan Barisan Monoton.
RED BLACK TREE INSERTION
STRUKTUR DATA BINARY SEARCH TREE (POHON CARI BINER)
Algoritma Runut-balik (Backtracking)
Algoritma dan Struktur Data
Luas Daerah ( Integral ).
Algoritma dan Struktur Data
Implementasi Binary Tree
Organisasi Berkas Sekuensial Berindeks
AREAL PARKIR PEMERINTAH KABUPATEN JEMBRANA
Tree.
Bahan Kuliah IF2091 Struktur Diskrit
P O H O N.
Algoritma Branch and Bound
Soal-Soal Latihan Mandiri
Kompleksitas Waktu Asimptotik
Statistika Deskriptif: Distribusi Proporsi
Bahan Kuliah IF2120 Matematika Diskrit
Pohon (bagian ke 6) Matematika Diskrit.
P OHON 1. D EFINISI Pohon adalah graf tak-berarah terhubung yang tidak mengandung sirkuit 2.
JIKA ORANG INI SAJA BISA APALAGI ENGKAU PASTI LEBIH DARI DIA
WISNU HENDRO MARTONO,M.Sc
Pertemuan 6 TREE & BINARY TREE
Algoritma dan Struktur Data
Binary Search Tree 2007/2008 – Ganjil – Minggu 9.
1 Pertemuan Tree Matakuliah: T0026/Struktur Data Tahun: 2005 Versi: 1/1.
Matakuliah : T0026/Struktur Data Tahun : 2005 Versi : 1/1
Matakuliah : T0534/Struktur Data Tahun : 2005 Versi : September 2005
Pertemuan 15 Red-Black Tree (RBT)
Organisasi Berkas Sekuensial Berindeks
Struktur Data Tree Eka Rahayu S. (2 Agustus 2011).
Struktur Data Binary Search Tree (BST)
Manipulasi Tree.
TREE KELOMPOK 7 HUSNATUL WILDA ( ) MISRIANA ( )
STRUKTUR DATA Tree (Struktur Pohon).
NAMA : SITI HAJAR NIM : UNIT : B NO.HP :0852 –
Manipulasi Tree.
Teknik Informatika - Universitas Muhammadiyah Malang (UMM)
Matakuliah : T0026/Struktur Data Tahun : 2005 Versi : 1/1
Algoritma dan Struktur Data
Oleh Shoffin Nahwa Utama, S.Kom
BINARY SEARCH TREE (BST)
IT234 Algoritma dan Struktur Data
Binary Search Tree (BST)
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.
Pohon Biner.
Binary Search Tree (BST)
IT234 Algoritma dan Struktur Data
Binary Search Tree (BST)
Transcript presentasi:

Algoritma dan Struktur Data AVL Tree

Outline AVL Tree Definisi Sifat Operasi 27th Mar 2007

AVL Tree Binary Search Trees yang tidak imbang memiliki efisiensi yang buruk. Worst case: O(n). AVL (Adelson-Velskii & Landis) tree adalah BST yang imbang. Setiap node di AVL tree memiliki balance factor bernilai -1, 0, atau 1. X X H H-2 H-1 27th Mar 2007

AVL Tree 10 5 3 20 1 43 10 5 3 20 5 2 1 3 27th Mar 2007

AVL Tree 12 8 16 4 10 14 2 6 27th Mar 2007

Penyisipan node di AVL Tree Setelah insert 1 12 8 16 4 10 14 2 6 1 27th Mar 2007

Penambahan node di AVL Tree Untuk menjaga tree tetap imbang, setelah penyisipan sebuah node, dilakukan pemeriksaan dari node baru → root. Node pertama yang memiliki |balance factor| > 1 diseimbangkan Proses penyeimbangan dilakukan dengan: Single rotation Double rotation 27th Mar 2007

AVL Tree Balance Factor Balance factor = HL – HR Balance factor node di AVL tree harus +1, 0, -1 Identifier: LH left high (+1) left subtree lebih panjang dari right subtree. EH even high (0) subtree kiri dan kanan heightnya sama. RH right high (-1) left subtree lebih pendek dari right subtree.

Menyeimbangkan AVL Tree AVL trees diseimbangkan dengan merotasikan node ke kiri atau ke kanan Kasus penyeimbangan pada sebuah node: 1. Left of left: mengalami left high dan left subtreenya mengalami left high. 2. Right of right: mengalami right high dan right subtreenya mengalami right high. 3. Right of left: Mengalami left high dan left subtreenya mengalami right high. 4. Left of right: Mengalami right high dan right subtreenya mengalami left high.

HL =3 HR =1 HR =3 HL =1

(continued) HL =3 HR =1 HL =1 HR =3

Case 1: Left of Left

Case 2: Right of Right

Case 3: Right of Left

Case 4: Left of Right

Contoh Sisipkan 3 ke AVL tree 11 8 20 4 16 27 8 11 4 20 3 16 27 8 3 27th Mar 2007

Contoh Penyisipan 5 ke AVL tree 11 8 20 4 16 27 8 11 5 20 4 16 27 8 5 27th Mar 2007

Latihan Sisipkan data berikut ke AVL tree secara berurutan: 10, 85, 15, 70, 20, 60, 30, 50, 65, 80, 90, 40, 5, 55 27th Mar 2007

Menghapus node di AVL Tree Proses menghapus sebuah node di AVL tree hampir sama dengan BST. Penghapusan sebuah node dapat menyebabkan tree tidak imbang Setelah menghapus sebuah node, lakukan pengecekan dari node yang dihapus → root. Gunakan single atau double rotation untuk menyeimbangkan node yang tidak imbang. Pencarian node yang imbalance diteruskan sampai root. 27th Mar 2007

Menghapus node di AVL Tree Tahap penghapusan: Case 1: X merupakan leaf, hapus X Case 2: jika X memiliki 1 child, gunakan child tersebut untuk menggantikan X. Kemudian hapus X Case 3: Jika X memiliki 2 child, ganti nilai X dengan node terbesar pada left subtree atau node terkecil pada right subtree. Hapus node yang nilainya digunakan untuk mengganti X Tahap menyeimbangkan node yang balance factornya tidak -1, 0, 1, dilakukan dari node yang dihapus menuju root. 27th Mar 2007

Delete 55 (case 1) 60 20 70 10 40 65 85 80 90 5 15 30 50 55 27th Mar 2007

Delete 55 (case 1) 60 20 70 10 40 65 85 80 90 5 15 30 50 55 27th Mar 2007

Delete 50 (case 2) 60 20 70 10 40 65 85 80 90 5 15 30 50 55 27th Mar 2007

Delete 50 (case 2) 60 20 70 10 40 65 85 50 80 90 5 15 30 55 27th Mar 2007

Delete 60 (case 3) 60 prev 20 70 10 40 65 85 80 90 5 15 30 50 55 27th Mar 2007

Delete 60 (case 3) 55 20 70 10 40 65 85 80 90 5 15 30 50 27th Mar 2007

Delete 55 (case 3) 55 prev 20 70 10 40 65 85 80 90 5 15 30 50 27th Mar 2007

Delete 55 (case 3) 50 20 70 10 40 65 85 80 90 5 15 30 27th Mar 2007

Delete 50 (case 3) 50 prev 20 70 10 40 65 85 80 90 5 15 30 27th Mar 2007

Delete 50 (case 3) 40 20 70 10 30 65 85 80 90 5 15 27th Mar 2007

Delete 40 (case 3) 40 prev 20 70 10 30 65 85 80 90 5 15 27th Mar 2007

Delete 40 : Rebalancing 30 20 70 10 Case ? 65 85 80 90 5 15 27th Mar 2007

Delete 40: after rebalancing 30 10 70 20 65 85 5 80 90 15 27th Mar 2007