# 题目
给定一个 正整数 num
,编写一个函数,如果 num
是一个完全平方数,则返回 true
,否则返回 false
。
进阶:不要 使用任何内置的库函数,如 sqrt
。
# 示例
# 示例 1
1 | 输入:num = 16 |
# 示例 2
1 | 输入:num = 14 |
# 提示
1 <= num <= 2^31 - 1
# 相关题目
力扣(LeetCode)367. 有效的完全平方数
https://leetcode-cn.com/
# 分析
简单的题目,没什么可以分析的。
# 解法
# 解法一:规律
4=1+3
9=1+3+5
16=1+3+5+7
以此类推,模仿它可以使用一个 while
循环,不断减去一个从 1
开始不断增大的奇数,若最终减成了 0
,说明是完全平方数,否则,不是。
1 | bool isPerfectSquare(int num){ |
# 解法二:平方计算
1 | public boolean isPerfectSquare(int num) { |
# 最后
期望与你一起遇见更好的自己