HASHING Table
Hashing adalah proses menyimpan data sesuai dengan key nya.
Dalam hasing terdapat key dan data, sehingga disebut dengan Hash Table.
Untuk menentukan key, dapat menggunakan hash function.
Hash Function
Hash function dapat digunakan apabila suatu data tidak memiliki key, sehingga kita harus mencari key dari data tersebut.
- Proses Data dalam Hash Function
menggunakan hashing sesuai dengan fungsi dari datanya masing2.
Hash Function dapat berupa:
1. Mid Square
2. Division
mengubah/mengconvert data ke dalam ASCII lalu dimodulo.
3. Folding
Membagi data sesuai jumlah data angka. Setelah dibagi, lalu hasil dari pembagian tersebut akan dijumlahkan. Tahap terakhir adalah mengambil 2 digit terakhir dari hasil tersebut.
4. Rotating
membalik angka data nya.
Misal: 1234 menjadi 4321.
5. Collision
Collision dipakai apabila ada data yang sama atau sama-sama bentrok.
Collision dapat di solusikan dengan 2 cara:
1. Linear Probling
Linear Probling dapat digunakan dengan menggunakan nomor array selanjutnya (kekurangan: data mjd berantakan, ketika di search tidak sesuai) jadi tidak disarankan untuk menggunakan operasi ini.
2. Chaining
Chaining mempunyai satu key, lalu masing-masing key menggunakan linked list yang tersambung satu sama lain sesuai dengan jumlah key. Dengan linked list pada chaining, maka data akan pushTail dan popMid. Karena kita harus tau data apa yang mau dihapus.
No comments:
Post a Comment