Anda Pengunjung Ke :

Kamis, 06 Oktober 2011

Program Interpolation Search

Interpolation Search
Teknik ini dilakukan pada data yang sudah terurut berdasarkan kunci
tertentu. Teknik searching ini dilakukan dengan perkiraan letak data. Contoh
ilustrasi: jika kita hendak mencari suatu kata di dalam kamus telepon, misal
yang berawalan dengan huruf J, maka kita tidak akan mencarinya dari awal
buku, tapi kita langsung membukanya pada 1/3 atau 1/4 dari tebal kamus.
Rumus posisi relatif kunci pencarian dihitung dengan rumus:


- Jika data[posisi] > data yg dicari, high = pos – 1
- Jika data[posisi] < data yg dicari, low = pos + 1



#include <iostream.h>
#include <conio.h>
#include <math.h>
main(){
int data[6]={2,8,5,11,6,100};
int l,h,posisi,cari;
float posisi1;
int n=6,flag=0;
l=0,h=n-1;
cout<<"masukan data yang di cari = ";cin>>cari;
do
{
posisi1=(cari-data[l])/(data[h]-data[l])*(h-l)+l;
posisi=floor(posisi1);
if(data[posisi]==cari){
flag=1;break;}


//cout<<"data tengah = "<<m<<endl;
if(data[posisi]>cari)h=posisi-1;
else if(data[posisi]<cari)l=posisi+1;
}while(cari>=data[l]&&cari<=data[h]);




if(flag==1)cout<<"data ada !\n";
else cout<<"data tidak ada!\n"; getch();}






nie ada juga program seaching yang pakai visual basic

0 komentar:

Posting Komentar

Twitter Delicious Facebook Digg Stumbleupon Favorites More