Sunday, March 29, 2020

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