折半查找
int Search_Bin(SSTable T, KeyType k)
{
int min=1,max=T.length;
int mid=(min+max)/2;
while(max>=min)//折半查找循环,左右边界作为循环条件比(1)循环运行效率高;
{
if(k==T.R[mid].key)
break;
else{
if(k>T.R[mid].key)
{ min=mid+1;
mid=(min+max)/2;
}
else
{
max=mid-1;
mid=(min+max)/2;
}
}
}
if(min<=max)
return mid;
else
return 0;
}
浙公网安备 33010602011771号