Penerapan fungsi rekrusif pada Binary Search
#include <stdio.h>
int ketemu;
int arr[10]={50, 67, 70, 75, 78, 80, 82, 83, 89, 90};
void binarysearch(int l,int r,int cari)
{
int i;
int j;
i = l;
j = r;
int tengah;
tengah = (int) (i+j)/2;
ketemu = 0;
if(i<=j)
{
if(arr[tengah] == cari)
{
ketemu = 1;
}
else if(arr[tengah] < cari)
{
binarysearch(tengah+1,j,cari); // rekrusif
}else
{
binarysearch(i,tengah-1,cari); //rekrusif singkatnya fungsi rekrusif adalah fungsi yang memanggil dirinya sendiri)
}
}
}
int main()
{
binarysearch(0,9,30);
if(ketemu == 1)
{
printf("ada");
}else
{
printf("tdk ada");
}
}
Komentar
Posting Komentar