REVIEW
Single Linked List
Linked list adalah sebuah penyimpanan yang linear. Linked list memiliki banyak tipe, single linked list, double linked list, multiple linked list, dll. Sesuai dengan namanya penyimpanannya linked list, seperti kotak yang saling dihubungkan sehingga dapat menyimpan tanpa limit. Single linked list memiliki perbedaan yaitu hanya memiliki 1 pointer yang menunjuk data lainnya sehingga datanya saling terhubung, sedangkan double linked list memiliki 2 pointer untuk menunjuk 2 data sehingga datanya terhubung dengan data sebelumnya dan setelahnya.
@ --> @ --> @ --> @ (single linked list)
@ <--> @ <--> @ <--> @ (single linked list)
@ = Node
--> / <--> = pointer
@ --> @ --> @ --> @ (single linked list)
@ <--> @ <--> @ <--> @ (single linked list)
@ = Node
--> / <--> = pointer
Double Linked List
Double linked list hampir sama dengan single linked list akan tetapi pada double linked list ini terdapat dua pointer next dan prev sehingga dapat mengakses 2 arah tidak seperti single linked list. Keuntungan dari double linked list adalah dapat memudahkan untuk memasukan data dan lebih tertata.
[_] <- - -> [_] <- - -> [_] <- - -> [_]
Keterangan :
<- - -> artinya 2 pointer sehinga dapat menunjuk ke arah depan dan mundur.
[_] nodenya.
Hash Table
Hash table adalah suatu algoritma yang di gunakan untuk memproses data dengan menggenerate key untuk dijadikan sebagai index yang nanti data tersebut dimasukan kedalam array. Akan tetapi ada case dimana index tersebut sama sehingga data yang sebelumnya tertumpuk dan hilang. Case seperti ini dapat diatasi menggukaan Linear Probing dan Chaining.
Linear Probing sendiri adalah algoritma untuk mengatasi case tersebut dengan cara mencari array yang kosong setelahnya menggunakan looping, jika tidak kosong akan mencari lagi sampai kosong pada array tersebut.
Chaining adalah algoritma untuk mengatasi case ini juga dengan menggukanan dynamic array, jika data pertama akan menjadi head data selanjutnya next dan sampai tak terhingga.
Binary Tree
Binary tree adalah tipe struktur data yang berbentuk pohon bercabang-cabang. Binary tree sendiri berbeda dengan linked list. Perbedaannya yang terlihat adalah binary tree menggukan root sebagai awal, anak kanan dan anak kiri, dengan cara memasukannya melihat root. Jika pada saat value root lebih kecil dari pada data akan di masukan ke anak kanan dan sebaliknya.
Binary Search Tree
BST atau binary search tree adalah binary tree yang sudah di urutkan sehingga dapat mencari lebih baik dari binary tree. Sama seperti namanya binary search tree berbentuk sepeti pohon dengan 1 akar dan 2 buah anak (anak kanan dan anak kiri). Prinsip dari binary search tree ini sendiri, pada saat memasukan data, mengecek dulu apakah lebih besar dari root(akar acuan) atau lebih kecil jika lebih besar akan dimasukan dibagian kanan jika lebih kecil akan dimasukan dibagian kiri dan seterusnya sampai tak terhinga. Datanya dihubungkan menggunakan array dinamis hingga dapat menampung data yang tidak terbatas.
Comments
Post a Comment