1 问题定义
给定已按升序排好序的n个元素a[0:n-1],现要在这n个元素中找出一特定元素x。
例如:设n=6,a=[1 3 5 7 9],要找出特定元素x=9;
2 基本思想
3 核心算法
int function binary-search(Type a[ ], const Type & x, int n)
{
int left = 0; int right = n-1;
found:=false;
while left <= right
{
int middle=(left+right)/2;
if (x = = a[middle] return middle;
else if (x > a[middle]) {
left = middle + 1;
}else right = middle – 1;
}
return -1 //未找到
}