您的位置:首页 > 其它

LeetCode: Sqrt(x)

2014-06-27 08:26 239 查看
思路:二分查找,但是注意到一个INT数的平方会超过INT的表示范围,所以,中间过程需要用long long 类型保存。

code:

class Solution {
public:
int sqrt(int x) {
long long left = 0, right = x;
while(left <= right){
long long mid = (left + right) / 2;
if(mid*mid == x)return mid;
else if(mid * mid < x)
left = mid+1;
else
right = mid-1;
}
return right;
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: