Metode Hash Fungsi Hash

Java juga dapat digunakan untuk membuat program yang berjalan diberbagai mobile device dengan menggunakan J2ME, PDA, embedded system, dan lain – lain Gambar di bawah ini memperlihatkan keunggulan dari bahasa pemrograman java. Gambar 2.1 Keunggulan Bahasa Pemrograman Java

2.2 Metode Hash

Sekarang telah banyak algoritma dan metode – metode pencarian yang digunakan untuk pengolahan data, terutama jika data tersebut tersedia dalam jumlah banyak. Salah satu metode yang dipergunakan saat ini adalah Metode Hash. Metode Hash atau Hashing adalah proses untuk melakukan kalkulasi pencarian posisi dari kunci pada table yang didasarkan pada nilai dari kunci Java Secure Applications Multiplatform Applications Web Applications GUI - Based Applications Distributed networking Applications Mission - Critical Applications Multithreaded Applications Object - Oriented Applications tersebut Adam Drozdek, 2008. Hashing digunakan sebagai metode untuk menyimpan data dalam sebuah array agar proses penyimpanan data, pencarian data dan penghapusan data dapat dilakukan dengan cepat. Pada hashing ini terjadi proses menghitung posisi record yang di cari dalam array, bukan membandingkan record yang ada dengan isi array. Proses untuk mengkonversi nilai kunci key ke posisi larik atau array di sebut fungsi hash. Sedangkan array atau larik yang digunakan untuk menyimpan data di sebut table hash.

a. Fungsi Hash

Fungsi Hash dilambangkan dengan h bertugas untuk menghitung indeks array yang berasal dari perhitungan kunci indeks array dari perhitungan kunci disebut kode hash. Untuk mencari kunci di dalam tabel hash kita perlu menghitung kode hash kunci tersebut. Ada beberapa fungsi hash yang banyak digunakan saat ini

1. Metode Pembagian Sisa Division – remainder method

Metode pembagian sisa menggunakan jumlah lokasi memori yang tersedia sebagai pembagi untuk membagi nilai yang asli dan menghasilkan sisa bagi. Sisa bagi tersebut adalah nilai hashnya. Secara umum rumus dari fungsi hash ini adalah hk = k mod m, k adalah nilai kunci dan m adalah jumlah lokasi memori yang tersedia pada arraylarik. Fungsi hash ini akan menempatkan record dengan kunci k pada lokasi memori yang memiliki alamat hk. Sebagai contoh, jika kita ingin menempatkan nomor mahasiswa dengan nomor mahasiswa 65314057 ke dalam table hash. Misalkan memori memiliki 100 buah alamat yang masing – masing alamat terdiri dari 2 karakter : 00…99. Untuk menentukan alamat dari NIM tersebut kita pilih bilangan prima yang dekat dengan 99, misalkan m = 97. Dengan menggunakan fungsi hk = k mod m, diperoleh h65314057 = 77. Dengan demikian, nomor mahasiswa 65314057 akan disimpan dalam alamat 77.

2. Metode Midsquare

Dalam metode ini, kunci yang diketahui dikuadratkan dan nilai tengah dari hasil kuadrat dari kunci tersebut diambil angka tengahnya sebagai alamat. Rumus untuk metode midsquare adalah sebagai berikut : hk= l nilai l diperoleh dengan menghapus digit – digit angka pada dua sisi dari k 2 , dengan catatan bahwa banyak digit di sebelah kiri dan sebelah kanan harus sama. Jika jumlah digit tidak sama, jika tidak sama maka digit angka disebelah kiri seolah – olah ditambahkan dengan angka nol. Sehingga menghasilkan alamat yang benar. Sebagai contoh, ketika ingin menentukan alamat untuk nilai k = 65314057, adalah dengan mengkuadratkan nilai ktersebut kemudian mengambil nilai tengah dari hasil dari k 2 tersebut. k = 65314057 k 2 =4265926|04|1799249 hk = 04

b. Resolusi CollisionTabrakan