Teknik searching adalah teknik operasi yang penting dalam pengolahan data. Seperti halnya dengan teknik sorting. Bahkan, keduanya tidak jarang digunakan secara bersama-sama untuk menghasilkan output yang sesuai dengan kebutuhan. Dalam teknik ini yang sering digunakan oleh para pengguna yaitu hanya dua macam yaitu metode pencrian langsung (linear search) dan metode pencarian biner (binary search). Umumnya metode langsung lebih efisien dibandingkan dengan pencarian biner. Hal ini disebabkan data dalam sekelompok data dalam jumlah data yang sedikit.
a. Metode Pencarian Langsung (Linear Search)
Proses pencarian data dengan metode ini cukup sederhana dan mudah dipahami. Dalam pencarian ini proses dilakukan dengan cara mencocokan data yang akan dicari dengan semua data yang ada dalam kelompok data. Proses pencarian data dilakukan dengan cara mencocokan data yang akan dicari dengan semua data yang ada dalam kelompok data. Proses pencocokan data dilakukan secara berurut satu demi satu dimulai dari data ke-1 hingga data pada ururtan terakhir. Jika data yang dicari mempunyai harga yang sama dengan data yang ada dalam kelompok data, berarti data telah ditemukan. Tetapi jika data yang dicari tidak ada yang cocok dengan data-data dalam sekelompok data, berarti data tersebut tidak ada dalam sekelompok data. Selanjutnya kita tinggal menampilkan hasil yang diperoleh tersebut.
b. Metode Pencarian Biner (Binary Search)
pencarian data dengan metode pencarian biner pada vektor tersebut dapat dijelaskan berikut ini. Jika vektor memuat N buah elemen data, maka mula-mula kita tetapkan harga batas bawah dan batas atas interval. Dari dua harga tersebut kemudian dapat ditentukan titik tengah. Misal harga batas bawah dinyatakan dengan variabel BAWAH, harga batas interval dinyatakan dengan variabel ATAS, dan titik tengah interval dinyatakan dengan variabel TENGAH. Dengan demikian, maka harga harga awal untuk BAWAH adalah sama dengan 1 dan atas sama dengan N. sedangkan TENGAH dihitung dengan cara sebagai berikut:
TENGAH = (ATAS + BAWAH) DIV 2
Jika cacah data dalam vektor adalah ganjil, maka titik tengah interval akan membagi vektor tersebut menjadi dua bagian yang perses sama. Sebaliknya, jika cacah dalam vektor adalah genap, maka titik tengah interval akan membagi vektor menjadi dua bagian dimana salah satu bagian akan mempunyai cacah data lebih banyak.
sumber:
Sutanta, Edhy., 2004, Algoritma Teknik Penyelesaian Permasalahan Untuk Komputasi, PT Graha Ilmu, Yogyakarta.
Tidak ada komentar:
Posting Komentar