Skip to main content

Hash Map dan BST



Hash Map


adalah suatu array yang mempunyai sekumpulan data yang ditampung sesuai dengan index arraynya, karena menggunakan index sebagai acuan / patokan sehingga pencarian data menjadi lebih cepat

Collision
Karena hashmap hanya tergantung pada index sehingga dalam pemasukan data dapat mengalami istilah "collision" sehingga ada beberapa cara agar collision dapat dicegah yaitu : 

1. Chaining :
Jika data memilki hasil hashing yang sama maka index hashing tersebut akan dibuat menjadi sebuah linked list sehingga collision tidak dapat terjadi




2. Linear probling 
adalah salah satu cara ketika memasukkan data ke hash mapnya tidak terjadi collision. Linear probling akan terjadi ketika pemasukkan data ke index tersebut tetapi index tersebut telah terisi dan akan terus mencari index yang kosong baru mengisi data tersebutHasil gambar untuk linear probing hash map

Binary Search Tree
adalah cara menampung data yang memanfaatkan konsep akar dan menggunakan suatu node sebagai patokan atau ayah dari akar - akar tersebut. Pada sebelah kiri akan ditampung data - data yang lebih kecil dari pusatnya, sedengkan pada sebelah kanan akan ditampung data yang lebih besar dari pusatnya

Comments

Popular posts from this blog

Review

Single Linked List  merupakan suatu sistem penyimpanan dimana memori yang digunakan untuk penyimpanan digunakan secara dinamis (memori yang digunakan sesuai dengan ukuran dari data yang ditampung) Struktur Single Linked List (node) :  - Data yang ditmapung, dapat berupa : char,int, bool dan sebagainya - Pointer next   yang merefernce ke alamat node setelahnya Pendeklarasian: struct Mahasiswa{ char nama[20]; char nim[20]; struct Mahasiswa * next; }; Dalam  Single Linked List  dapat dilakukan juga : Insert, Delete maupun Update Ada beberapa cara dalam menginsert node baru : - Insert di awal ( head ) - Insert di akhir ( tail ) - Insert di  next  dari node yang ditunjuk Double Linked List  merupakana salah satu perkembangan dari single linked list yaitu penyimpanan data secara dinamis (menggunakan memori secukupnya) Struktur Double Linked List :  - Data yang ditampung, dapat ...

Double Linked List

Doubly Linked List Double linked list (DLL) adalah pengembangan dari Single Linked List (SLL) dimana terdapat tambahan fitur baru yaitu tambahan pointer baru yang disebut sebagai prev.  Pada awalnya, Single Linked List (SLL) hanya mempunyai satu pointer penunjuk yaitu "next" dimana digunakan untuk menunjuk node berikutnya , sedangkan dengan menggunkan DLL, kita mereserve satu memori baru untuk membuat pointer yang menunjuk pada node sebelumnya yang sering dinamakan "prev". Gambar menunjukkan DLL yang mereserve memori untuk tiga data yaitu, pointer untuk prev , pointer untuk next dan valuenya. Dengan adanya bantuan "prev" dapat lebih memudahkan dalam memasukkan data secara terurut maupun dalam mencari node karena dapat dicompare dengan node sebelumnya maupun sesudahnya. Pendeklarasian: struct Mahasiswa{ char nama[20]; char nim[20]; struct Mahasiswa * next; struct Mahasiswa * prev; }; Dalam Doubly Linked list dapa...

Binary Search Tree

Binary Search Tree BST merupakan suatu metode menganalisa node yang menggunkan konsep seperti pohon yaitu memiliki ranting. Ranting tersebut dibagi menjadi 2 macam, yaitu ranting sebelah kiri dan kanan, dimana ranting sebelah kiri merupakan kumpulan node yang lebih kecil dari induknya yaitu yang bagian tengah dan terdapat juga ranting yang sebelah kanan dimana akan berisi kumpulan node yang valuenya lebih besar dari node induknya. Ciri - ciri BST: - Menggunkan konsep relationship antara parent dan child - Setiap parent node dapat mempunyai nol anak sampai dengan 2 anak(satu di sebelah kiri dan satu di sebelah kanan) - Setiap subtree mempunyai subbranches di sebelah kanan maupun di sebelah kirinya - Setiap node memilki nilai valuenya sendiri - Node yang terletak di sebelah kiri dari si induk memilki value lebih kecil dari si induk dan lebih besar di sebelah kanan si induk. Tipe - tipe BST : - Full Binary Tree : BST yang dimana setiap node me...