题目考察的知识点
考察哈希表的应用
题目解答方法的文字分析
根据题意不断循环这个更新的过程,并将结果计入set中,如果最后出现了重复就说明是快乐数,或者最后的结果为1的时候也可以证明是快乐数。
本题解析所用的编程语言
使用Java解答
完整且正确的编程代码
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param n int整型 * @return bool布尔型 */ public boolean isHappy(int n) { Set<Integer> set = new HashSet<>(); while (n != 1 && !set.contains(n)) { set.add(n); n = help(n); } return n == 1; } private int help(int n) { int res= 0; while (n > 0) { int num = n % 10; n = n / 10; res += num * num; } return res; } }