题目:
给定一个 正整数 num ,如果是,写一个函数 num 如果是完全平方数,则返回 true ,否则返回 false 。
解决方法:1.最简单直接使用内置函数,如sqrt。
代码:
class Solution { public boolean isPerfectSquare(int num) { int x; x = (int)Math.sqrt(num); if(x*x == num){ return true; }else{ return false; } }}
2.通过暴力求解,一个有效的完全平方数num,必须有正整数x,以满足x * x = num。我们可以从正整数1开始,从小到大寻找这个x。如果只是x*x=num,然后我找到了x。如果x出现了。*x>num,不需要搜索。
class Solution { public boolean isPerfectSquare(int num) { long x , square = 1; for(x = 1;square <= num;x++){ if(square == num){ return true; } square = x * x; } return false; }}