Searching adalah cara mencari/ menelusuri sesuatu berupa
data,baik teks atau file-file. Contoh searching yang paling populer adalah
google. Pada google untuk mencari sesuatu kita hanya memasukkan keyword(kata
kunci) yang ingin ditelusuri.
Secara sederhanana metode searching dibagi menjadi 2 yaitu:
1. Pencarian Beruntun / Sequential search
Pencarian
beruntun ini adalah metode pencarian yang mana data yang ingin dicari
dibandingkan data- data yang ada didalam kumpulan dengan cara membandingkan dan
menyamakan tiap- tiap data satu persatu.
Contoh:
Kumpulan nilai n= {34, 24, 56, 21, 90,
67, 22,}
Nilai yg ingin dicari k= 67.
Maka “k” akan memeriksa satu persatu mulai dari 34 sampai
22, dan setelah dicari maka nilai 67 ada di dalam kumpulan nilai n.
2. Binary search
Pencarian dibagi
atau istilahnya binary search adalah metode pencarian yang mana data yang ingin
dicari dibandingkan dengan data-data yang ada dikumpulan yang telah dibagi 2.
Syarat untuk melakukan metode ini adalah kumpulan data yanng ingin dicari
haruslah terurut.
Contoh:
Kumpulan nilai n={21,22, 34,56,67,90}
Nilai yang ingin dicari k =67
-
k akan memeriksa nilai tengah, apabila k sama
dengan nilai (if k ==nilai tengah) maka proses pencarian akan selesai
-
apabila k lebih kecil dari nilai tengah maka proses pencarian hanya
dilakukan pada nilai yang kurang dari nilai tengah begitu juga dengan
sebaliknya, itulah mengapa metode pencarian ini dinamakan pencari deibagi 2
karena pencarian hanya dikiri atau dikanan.
Pada kesempatan ini kita akan mencoba membuat contoh
program pencarian dengan metode pencarian sequential search (linier search). Disini saya menggunakan bahasa pemrograman C++ dan menggunakan aplikasi Codeblock. Jadi apabila anda menggunakan aplikasi bisa disesuaikan sendiri, tapi konsepnya sama kok.
klik gambar untuk memperbesar
Dari script diatas bisa dilihat bahwa :
5- 7 : Pemanggilan variabel yang digunakan pada program
9- 12 : Proses pemasukkan array (input sebanyak 10 kali)
13 : Proses pemaukkan nilai yang akan dicari didalam
array
14- 19 : Dengan menggunakan perulangan, Proses pencocokan
antara nilai yang ingin dicari dengan array yang sudah diinputkan di awal tadi satu persatu.
20- 28 : Proses pencetakan hasil pencarian. Apabilaa ada
yang sama bahkan ada yang lebih dati satu maka akan diatmpilkan jumlahnya pada
variabel k, dalam hal ini variabel k ada pada proses pencocokan baris 16-17
Dan apabila dijalanka maka hasilnya sperti ini:
klik gambar untuk memperbesar
Untuk yang ingin mencoba ini scriptnya:
#include <iostream>
using namespace std;
int main ()
{
int a[10];
int b, x, k;
k=0;
for(b=0;b<10;b++)
{
cout<<"Masukkan nilai "<<(b+1)<<" : ";cin>>a[b];
}
cout<<"Masukkan nilai yang ingin dicari : ";cin>>x;
for (b=0;b<10;b++)
{
if(x==a[b])
{ k=k+1;
}
}
if (k>0)
{
cout<<"\nNilai anda ditemukan di pencarian berjumlah "<<k;
}
else
{
cout<<"\nMaaf nilai yang anda masukkan tidak ditemukan";
}
}
aaaa
ReplyDeletePost a Comment