class Solution {
public:
bool isPerfectSquare(int num) {
if ( num == 0 )
{
return true;
}
if ( num == 1 )
{
return true;
}
// 这实际上是一个二分查找的问题
int lb = 0;
int ub = num;
double middle = num/2;
while ( ub - lb >= 0 )
{
middle = lb + (ub-lb)/2;
if ( middle == 0 )
{
break;
}
if ( middle == num/middle )
{
return true;
}
else if ( middle > num/middle )
{
ub = middle - 1;
}
else
{
lb = middle + 1;
}
}
return false;
}
};
Valid Perfect Square
最新推荐文章于 2022-04-07 13:52:14 发布
本文介绍了一种使用二分查找方法来判断一个整数是否为完美平方数的算法实现。通过设定初始搜索范围,逐步缩小查找区间直到找到符合条件的平方根或确定不存在整数平方根。
541

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



