Metode Pencarian Interpolation Search Pada C++
Ok . assalamualaikum . kali ini
Bintara mau ngeshare lagi metode pencarian yang terakhir yakni Interpolation Search , dari Metode sebelumnya yakni
Binary Search dan
Sequential Search , Langsung saja cekidot .
#include <stdio.h>
#include <cmath>
using namespace std;
int main(){
int array_a[10] = {11,12,21,25,30,34,45,65,73,81};
int low, high, pos, cari, flag = 0;
float posisi;
low = 0;
high = 9;
printf("data yang anda cari adalah : ");
scanf("%i", &cari);
do {
posisi = (float)((cari-array_a[low])/array_a[high]-array_a[low])*(high-low)+low;
pos = floor(posisi);
if(array_a[pos] == cari){
flag = 1;
break;
}
if(array_a[pos] > cari)
high = pos - 1;
else if(array_a[pos]<cari)
low = pos + 1;
}while(cari >= array_a[low] && cari <= array_a[high]);
if(flag = 1) printf("data ditemukan");
else printf("data tidak ditemukan");
return 0;
}
Sekian tulisan kali ini semoga bermanfaat, dan salam sukses
Bintara , untuk hasilnya silakan compile sendiri ya . :)
Related Post:
Title
:
Metode Pencarian Interpolation Search Pada C++
Description
:
Metode Pencarian Interpolation Search Pada C++ Ok . assalamualaikum . kali ini Bintara mau ngeshare lagi metode pencarian yang terakhir y...