69,371
社区成员
发帖
与我相关
我的任务
分享
return BinSearch(s, 0, 0, k); //low <= high 接着递归
BinSearch(SSTable s, 0, 1, KeyType k)
{
low = 0, high = 1, low <= high;
mid = (low + high)/2 = 0;
if(...)
return BinSearch(s, 0, -1, k); //low > high 递归停止
if(...)
return BinSearch(s, 1, 1, k); //low <= high 接着递归,但最终可以停止
}
return BinSearch(s,low,mid,k);和return BinSearch(s,mid,high,k);
BinSearch(SSTable s, 0, 1, KeyType k)
{
low = 0, high = 1, low <= high;
mid = (low + high)/2 = 0;
if(...)
return BinSearch(s, 0, 0, k); //low <= high 递归停止
if(...)
return BinSearch(s, 0, 1, k); //又是(s, 0, 1, k), low <= high 接着递归,但这个递归回到了原始的函数了,所以不会停止,直到stack limit。
}