Bisection Method
Use unsigned long long for start, end, mid and cur
class Solution {
public:
int sqrt(int x) {
unsigned long long l=0, r=(x+1)/2;
while (l<=r) {
unsigned long long mid=(l+r)/2;
unsigned long long cur=mid*mid;
if (cur==x) return mid;
else if (cur>x) r=mid-1;
else l=mid+1;
}
return r;
}
};
本文介绍了一种利用unsigned long long类型优化平方根计算的方法,并通过Bisection Method算法实现了整数平方根的高效求解。
2025

被折叠的 条评论
为什么被折叠?



