Binary Search
Salah satu syarat agar binary search dapat dilakukan adalah data
sudah dalam keadaan urut. Dengan kata lain, apabila data belum dalam
keadaan urut, binary search tidak dapat dilakukan.
Prinsip dan teori dari binary search dapat dijelaskan sebagai berikut :
a. Mula-mula diambil posisi awal 0 dan posisi akhir = N - 1, kemudian dicari
posisi data tengah dengan rumus (posisi awal + posisi akhir) / 2. Kemudian
data yang dicari dibandingkan dengan data tengah.
b. Jika lebih kecil, proses dilakukan kembali tetapi posisi akhir dianggap sama
dengan posisi tengah –1.
c. Jika lebih besar, proses dilakukan kembali tetapi posisi awal dianggap sama
dengan posisi tengah +1. Jika data sama, berarti ketemu.
#include <iostream.h>
#include <conio.h>
main(){
int data[6]={2,8,5,11,6,100};
int l,r,m,cari;
int n=6,flag=0;
l=0,r=n-1;
cout<<"masukan data yang di cari = ";cin>>cari;
while(l<=r&&flag==0){
m=(l+r)/2;
cout<<"data tengah = "<<m<<endl;
if(data[m]==cari)flag=1;
else if(cari<data[m]){ r=m-1;
cout<<"data kiri !\n";
}
else{
l=m+1;
cout<"data kanan !\n";
}
if(flag==1)cout<<"data ada !\n";
else cout<<"data tidak ada!\n"; }getch();}
nie ada juga program seaching yang pakai
0 komentar:
Posting Komentar