202哈希表-快乐数
Posted 孤注一掷 、
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了202哈希表-快乐数相关的知识,希望对你有一定的参考价值。
题目
思路
用哈希法判断这个sum是否重复出现,如果重复就返回false,否则一直找到sum为1为止。
求和的过程是对数对十取余,平方作和后除以十。
代码
class Solution
public boolean isHappy(int n)
Set<Integer> record = new HashSet<>();
//如果不为1且set容器中不包含这个元素,则继续循环
while(n != 1 && !record.contains(n))
record.add(n);
//求和过程
n = getNextNumber(n);
return n == 1;
private int getNextNumber(int n)
int res = 0;
while(n > 0)
int temp = n % 10;
res += temp * temp;
n = n / 10;
return res;
以上是关于202哈希表-快乐数的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode 202. 快乐数 Happy Number