Hashing Table

Hashing and Hash Table

Jadi pada materi hari ini dibahas tentang hashing dan juga hash table.

Jadi apa itu hashing? Hashing menurut yang saya pelajari adalah sebuah function yang dimana untuk meng-sort suatu data sehingga untuk mempermudah pencarian data pada index tertentu. Hashing dan juga hash table berkaitan erat dengan array dan juga linked list.

Contoh coding hashing:
#define size 95
int hash(char nama[]){
int jmlASCII = 0;
int len = strlen(nama);
for(int i = 0; i < len; i++){
jmlASCII = jmlASCII + nama[i];
}
int key = jmlASCII % size;
return index;
}

Jadi pada coding ini, kita akan meng-input sebuah nama dan function ini akan dijalankan.

Misal hash("stefanus"), maka akan mengreturn index sebesar 18 karena jmlASCII "stefanus" % size(sudah di define sebesar 95) = 873 % 95 = 18.

Index inilah yang akan dipakai untuk mempermudah pencarian sebuah data atau menyimpan sebuah data.

Lalu untuk hashTable menurut pengertian saya adalah hasil simpanan data dari function hash kita tadi, setelah kita hash hasil index nama-nama tadi akan kita sort dengan penerapan linked list. Jadi ketika datanya ingin dicari akan lebih cepat dan efisien.


Gambar 1.1 Proses Input data


Gambar 1.2 Data sudah disimpan

Gambar 1.3 Proses pencarian data

Jadi itulah summary pembelajaran saya hari ini Terima Kasih :)

Untuk referensi full codingnya bisa dilihat disini:







Comments