算法分析:数据元素有序,设3个变量low、mid、high保存数组元素的开始、中间以及末尾序号,
将Key值与a[mid]比较,不断缩小查找范围,直至查找成功或者失败。
代码:
1 while(low <= high) 2 { 3 mid=(high+low)/2; 4 if(a[mid]==x) 5 return mid; 6 else if(a[mid]>x) 7 high=mid-1; //"mid-1" → "-" 8 else //"mid+1" → "+" 避免程序进入无限循环当中
9 low=low+1;
10 }