367ValidPerfectSquare有效的完全平方数

coding

给定一个正整数 num,编写一个函数,如果 num 是一个完全平方数,则返回 True,否则返回 False。
注意:不要使用任何内置的库函数,如  sqrt。
示例 1:
输入: 16
输出: True
示例 2:
输入: 14
输出: False

详见:https://leetcode.com/problems/valid-perfect-square/description/

C++:

方法一:

class Solution {

public:

bool isPerfectSquare(int num) {

for(int i=1;i<=num/i;++i)

{

if(i*i==num)

{

return true;

}

}

return false;

}

};

 方法二:

class Solution {

public:

bool isPerfectSquare(int num) {

long left=0,right=num;

while(left<=right)

{

long mid=left+(right-left)/2,t=mid*mid;

if(t==num)

{

return true;

}

else if(t<num)

{

left=mid+1;

}

else

{

right=mid-1;

}

}

return false;

}

};

 参考:https://www.cnblogs.com/grandyang/p/5619296.html

以上是 367ValidPerfectSquare有效的完全平方数 的全部内容, 来源链接: utcz.com/z/509800.html

回到顶部