202. 快乐数
集合
import java.util.HashSet;
class Solution {
public boolean isHappy(int n) {
HashSet set = new HashSet<>();
while (n != 1){
int sum = 0;
while (n / 10 != 0 || n % 10 != 0){
sum += (n % 10) * (n % 10);
n = n / 10;
}
n = sum;
/**
* 用集合存储出现过的数字,如果循环出现就返回false
*/
if (set.contains(sum)){
return false;
}
set.add(sum);
}
return true;
}
}
/**
* 时间复杂度 O(logn)
* 空间复杂度 O(logn)
*/
https://leetcode-cn.com/problems/happy-number/