Hashing adalah transformasi string karakter menjadi nilai panjang tetap yang lebih pendek atau kunci yang mewakili string asli. penggunaannya seperti memberikan indeks ke dalam database.
Ada beberapa jenis teknik hashing:
- Mid Square
ini adalah teknik pengambilan indeks melalui angka tertentu pada value.
cth:
data 1 - 2132411
maka mid part yang diambil adalah 324
data 2 - 7657876
maka mid part yang diambil adalah 578
- Division
ini adalah teknik pengambilan indeks melalui value yang di modulus dengan angka yg sudah ditentukan.
sebagai contohnya, saya mengambil indeks A-Z yang bertotal ASCII sampai 90.
cth: kata yang saya gunakan "ABE"
kita hitung value menggunakan ASCII :
A = 65
B = 66
E = 69
(65+66+69) % 90 = 20
maka akan disimpan di indeks 20
- Folding
ini adalah teknik yang membagi setiap string menjadi beberapa bagian
cth: angka 3241 dalam hash table yang disediakan sebanyak 100
dibagi menjadi 32 dan 41
kemudian ditambahkan dan hasilnya adalah 73
- Digit Extraction
ini adalah teknik dengan mengambil beberapa bagian dari angkanya
cth: 12345
ambil digit 1, 3, dan 5
sehingga hash code yang didapat adalah 135
- Rotating Hash
ini adalah teknik yang dilakukan setelah memiliki hash code dengan cara-cara diatas kemudian di rotasi
cth: hash code = 12345
rotated menjadi = 54321
sekarang sudah mengerti kan dengan penjelasan apa itu teknik hashing ?
nah sekarang yuk kita pelajari tentang Binary Tree
Apa sih yang dimaksud dengan Binary Tree ?
Binary Tree adalah Tree yang memiliki node yang bisa memiliki maksimal 2 child (left & right)
gambar diatas adalah contohnya...
nah itu dia penjelasan singkat tentang Binary Tree...
Apabila ada yang kurang jelas silahkan comment...
selamat berkoding :)
