bool bfind = false;
int low = 0, high = max-1, mid = 0;
while(low <= high)
{
mid = (high + low) / 2;
cmp = 比较函数【-1,0,1】
if (cmp < 0) {
low = mid + 1;//mid往右移动
} else if(cmp > 0) {
high = mid - 1;//mid往左移动
} else {
bfind = true;
break;
}
}
if (bfind) {
//找到处理
} else {
//没有找到,这里如果处理插入low表示插入位置
//可以做如下处理
if(low >= max) {
//最后追加数据
} else {
//前面插入数据,包括最开始位置/0位置
}
}