1.假设在长度为 len 的 L表中进行折半查找,需要查找的数值为 item。查找成功时返回元素所在的位置,查找失败时返回 -1。
int binSearch(int L[ ], int item, int len)
{ int low=0 , high=len-1;
while(low<=high){
int mid= (low+high)/2;
if(item==L[mid])
return mid;
else if(item<L[mid])
high=mid-1;
else
low=mid+1;
}
return -1;
}
2、在长度为 len 的 L 表中进行直接选择排序,平均时间复杂度O(n2)
void selectSort(int L[],int len)
{ int i, j, min;
int tmp;
for(i=0;i<len-1;i++)
{
min=i;
for(j=i+1;j<len;j++)
if(L[j]<L[min])
min=j;
if(min !=i)
{
tmp=L[i];
L[i]=L[min];
L[min]=tmp;
}
}
}