Hash
|
|
Artikel ini tidak memiliki paragraf pembuka yang sesuai dengan standar Wikipedia. Artikel ini harus didahului dengan kalimat pembuka: Hash adalah ........ Tolong bantu Wikipedia untuk mengembangkannya dengan menulis bagian atau paragraf pembuka yang informatif sehingga pembaca awam mengerti apa yang dimaksud dengan "Hash". |
|
|
Artikel ini tidak memiliki kategori. Tolong bantu Wikipedia untuk menambahkan kategori. Tag ini diberikan pada Maret 2013. |
Fungsi Hash banyak sekali digunakan untuk mempercepat pencarian dalam tabel data atau pembandingan data seperti didalam basis data,mencari duplikasi atau kesamaan(rekaman) disebuah arsip komputer yang besar,menemukan goresan-goresan yang sama di sebuah DNA,dan sebagainya.
Fungsi hash haruslah stabil(referential transparent),artinya,jika ia dipanggil dua kali oleh masukan yang benar-benar sama(sebagai misal,string yang mengandung sekuen karakter yang sama),maka ia haruslah memberi hasil yang sama pula.Ini adalah sebuah kontrak dalam banyak bahasa pemrograman yang membolehkan pengguna melakukan override pada kesamaan morfologi dan fungsi hash bagi sebuah objek;jika dua objek adalah sama,maka kode hash-nya pun sama.menjadi hal yang sangat penting untuk menemukan sebuah elemen didalam tabel hash dengan cepat,juga karena dua elemen yang sama akan sama-sama meng-hash ke slot yang sama.
Beberapa fungsi hash dapat memetakan dua atau lebih kunci ke nilai hash yang sama,menyebabkan kolisi.Fungsi-fungsi hash ini mencoba memetakan kunci-kunci ke nilai hash seketat mungkin karena tabrakan-tabrakan(kolisi) akan semakin sering terjadi saat tabel hash semakin terisi penuh.Sehingga,nilai hash digit-tunggal(jumlah dari probing setiap nilai hash dibagi dengan jumlah tabel hash) terbatas hanya di 80% ukuran tabel yang ada.Bergantung kepada algoritma yang digunakan,aturan-aturan yang lain mungkin diperlukan,seperti Double Hashing dan Linear Probing.
