Posts

Linked list II

Image
HEAPS AND TRIES Heaps Heaps adalah struktur data yang berbasis binary tree komplit yang memenuhi properti heap. Min heap, dimana nilai parent harus lebih kecil dari nilai children. Max heap, dimana nilai parent lebih besar dari nilai children.  Min max heap, dimana lebih mudah untuk menemukan kondisi heap min level dan max level. Setiap elemen memiliki level ganjil/genap yang lebih kecil dari semua children (MIN level), sedangkan setiap elemen yang memiliki level ganjil/genap lebih besar dari semua children (MAX level). Implementasi Heap menggunakan array yang dimulai dari indeks ke 1. Setiap hubungan node dengan parent, left child, dan right child dalam implementasi array dapat dihitung dengan mudah melalui rumus umum berikut: Parent(x)   = x / 2 Left-child(x)   = 2 * x    Right-child(x)   = 2 * x + 1 Insertion  Saat sebuah data baru dimasukkan dalam heap, maka data langsung ditempatkan di index terakhir dalam heap itu data di-uheap yang maksudnya data diba

AVL TREE

Image
AVL TREE : AVL Tree adalah Binary Search Tree yang memiliki perbedaan tinggi/ levelmaksimal 1 antara subtree kiri dan subtree kanan. AVL Tree muncul untukmenyeimbangkan Binary Search Tree. Dengan AVL Tree, waktu pencarian danbentuk tree dapat dipersingkat dan disederhanakan. Untuk menjaga tree tetap imbang, setelah penyisipan sebuah node, dilakukan pemeriksaan dari node baru→ root. Node pertama yang memiliki |balance factor| > 1 diseimbangkan. Prosespenyeimbangan dilakukan dengan: Single rotation dan Double rotation. 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  dan  Double rotation Single Rotation Single rotation dilakukan bila kondisi AVL tree waktu akan ditambahkan node baru dan posisi node baru seperti pada gambar 2. T1, T2, d

Rangkuman Linked List Semester 2

Image
Linked list : Linked list adalah struktur data yang terdiri dari urutan catatan data sehingga setiap catatan ada bidang yang berisi referensi ke catatan berikutnya dalam suatu urutan. Linked list mengijinkan penyisipan dan penghapusan pada lokasi data dimanapun. Linked list terdiri dari 2 yaitu, Single Linked List dan Double Linked List. Single Linked List Single Linked List adalah sekumpulan dari node yang saling terhubung dengan node lain melalui sebuah pointer. rangkaian single linked list tersebut diawali dengan sebuah head untuk menyimpan alamat awal dan di akhiri dengan node yang mengarah pointer ke null. Circular Single Linked List Circular Single Linked List adalah single linked list yang pointer nextnya menunjuk pada dirinya sendiri. Jika single list tersebut terdiri dari beberapa node, maka pointer next pada node terakhir akan menunjuk ke node terdepannya. Doubly linked list Double Linked List adalah sekumpulan node data yang terurut linear atau sekuensi