二分查找:设定查找的上下边界,(初始可以上边界为X,下边界为0).在二分查找的每一步中,比较中间元素mid的平方与X的关系,并通过比较的结果调整上下界的范围。
int mySqrt(int x){
int low = 0, high = x;
int mid;
if(x == 1)
return 1;
while(high - low > 1)
{
mid = (low+high)/2;
if(x/mid<mid)
high = mid;
else
low = mid;
}
return low;
}
仅供自己回忆参考。