#include <iostream>
using namespace Std;
int search (const int*, int, int);
int main ()
{
int arr[6] = {1,2,3,4,10,20};
int find = Search (arr, 6, 10);
if (find = =-1)
cout << "not found!" << Endl;
Else
cout << Arr[find] << Endl;
return 0;
}
int search (const int* arr, int size, int key)
{
int tou, Wei, Zhong;
tou = 0;
Wei = size-1;
while (Tou <= Wei)
{ & nbsp , &NB Sp , &NB Sp , &NB Sp , &NB Sp , &NB Sp , &NB Sp &NBSP , &NB Sp , &NB Sp , &NB Sp , &NB Sp , &NB Sp , &NB Sp , &NB Sp &NBSp , &NB Sp , &NB Sp , &NB Sp , &NB Sp , &NB Sp , &NB Sp , &NB Sp &NBsp , &NB Sp , &NB Sp , &NB Sp , &NB Sp , &NB Sp , &NB Sp , &NB Sp
Zhong = tou + (Wei-tou) * (Key-arr[tou])/(Arr[wei]-arr[tou]); Lafarange algorithm
if (key = = Arr[zhong])
{
Return Zhong;
}
else if (Key < Arr[zhong])
{
Wei = zhong-1;
}
Else
Tou = zhong + 1;
}
return-1;
}
Lagrange Interpolation finding method