Skip to main content

Posts

Showing posts from April, 2020

AVL Tree Summary

AVL TREE AVL Tree merupakan Binary Search Tree (BST) yang seimbang sehingga lebih cepat untuk mencarinya dibanding dengan BST. Didalam AVL keseimbangan haruslah sangat diperhatikan tiap node tidak boleh kurang dari -1 dan tidak boleh juga lebih dari 1. Cara menentukan apabila balance atau tidak adalah dengan jumlah bagian terpanjang sebelah kanan - bagian terpanjang sebelah kiri. Berikut adalah Contoh AVL Tree: Diatas adalah contoh AVL Tree yang sempurna karena perbedaan antara yang kanan dengan yang sebelah kiri adalah 0. Di AVL Tree setiap setelah melakukan Insertion atau deletion harus di cek kembali keseimbangan di dalam AVL Tree-nya, Apabila AVL Tree belum seimbang maka ada dua kemungkinan cara untuk menyeimbangkan Tree tersebut. Yang pertama adalah dengan menggunakan Single Rotation Dibawah ini adalah contoh AVL Tree yang tidak seimbang: Karena yang bagian sebelah kiri – bagian sebelah kanan adalah 2 maka AVL Tree di

SUMMARY

LINKED LIST 1. Circular single Linked list Single linked list adalah satu variabel pointer untuk menyimpan data dengan metode linked list. Data disimpan ke dalam node, setiap node memiliki pointer untuk menunjuk ke node berikutnya. Nah, kalau Circular single linked list itu sama seperti single linked list tetapi setiap node awalnya menyambung dengan node akhir seperti lingkaran, selalu menyambung. Ini adalah ilustrasi perbedaan single linked list (atas) dan circular single linked list(bawah) 2. Doubly linked list Adalah Linked list yang mempunya dua pointer yaitu pointer prev dan next. Pointer prev digunakan untuk menunjukkan ke data sebelumnya dan sebaliknya kalau pointer next menunjukkan ke data selanjutnya Contoh code untuk double linked list : Insert pertama (Dari Depan) Insert dari depan itu adalah penyisipan yang ada di awal, dan pointer head akan pindah ke elemen / data baru, contohnya: Insert Terakhir (Dari Belakang) Insert dar