模板集函数 二分查找
int find(int low, int high,int key)
{
while(low<=high)
{
int mid = (low+high)/2;
if(key==a[mid])
{
return mid;
}
else if(key<a[mid])
{
high = mid-1;
}
else if(key>a[mid])
{
low = mid + 1;
}
return -1;
}
模板集函数 快速排序
void f(int a[],int l,int r)
{
int i = l,j = r, t = a[l];
if(l>=r) return ;
while(i<j)
{
while(a[j)>=t&&i<j)j--;
a[i] = a[j];
while(a[i]<=t&&i<j)i++;
a[j] = a[i];
}
a[i] = t;
f(a,l,i-1);
f(a,i+1,r);
}