777. 完全平方数
给出一个正整数
num
,写一个函数,要求当这个当
num
为完全平方数时函数返回
True
,否则返回
False
样例
样例1:
输入: num = 16
输出: True
解释:
sqrt(16) = 4
样例2:
输入: num = 15
输出: False
解释:
sqrt(15) = 3.87
注意事项
不要
用诸如sqrt的库函数。
public class Solution {
/**
* @param num: a positive integer
* @return: if num is a perfect square else False
*/
public boolean isPerfectSquare(int num) {
// write your code here
int x= (int) Math.sqrt(num);
return x*x==num;
}
}
public class Solution {
/**
* @param num: a positive integer
* @return: if num is a perfect square else False
*/
public boolean isPerfectSquare(int num) {
// write your code here
int x=2;
long sum=x*x;
while (num>sum){
x=x*2;
sum=x*x;
if(sum<=0){
break;
}
}
if (num==sum){
return true;
}
while (num<sum||sum<=0){
sum=x*x;
if (num==sum){
return true;
}
x--;
}
return false;
}
}