思维导图:
算法思想:
代码实现:
typedef struct {
int *elem;
int TableLen;
}SeqList;
int Binary(SeqList L,int key){
int low = 0,high=L.TableLen-1,mid;
while(low<=high){
mid = (low+high) / 2;
if(L.elem[mid] == key)
return true;
else if(L.elem[mid]>key)
high = mid-1;
else
low = mid+1;
}
return -1;
}
判定树:
例:
折半查找判定树的构造: