法一:
int mySqrt(int x) {
if(x<2)
return x;
long start = 1,end = x,mid = 0;
while(start<=end)
{
mid = start + (end-start)/2;
long sum = mid * mid;
if(sum==x)
return mid;
if(sum<x)
start = mid + 1;
else
end = mid -1;
}
return end;
}
法二:
int mySqrt(int x) {
long g = x;
while(g*g>x)
{
g = (g+x/g)>>1;
}
return g;
}
leetcode ----69. Sqrt(x)
最新推荐文章于 2022-04-25 16:00:55 发布