今天小尼写的这篇page针对的是leetcode上的202.快乐数所写的,首先小尼先简单介绍一下这道题,就是给定一正整数,然后每一次将该数的每一位都平方再相加得到一个新的数据,我们不断的反腐操作,最后如果这个数经过多次操作后返回到了原来的这个数,那么我们称这个数为快乐数。
小尼先拉一下代码:
public int A(int n) {
int num = 0;
while (n > 0) {
int a = n % 10;
num += a * a;
n = n / 10;
}
return num;
}
public boolean isHappy(int n){
Set<Integer> set = new HashSet<>();
while(n != 1 && !set.contains(n)){
set.add(n);
n = A(n);
}
return n == 1;
}
这里先写了一个对值进行每个数平方再加起来的和的方法,然后再对boolean的方法进行一个新的判断,利用set数据类型进行对应的contains判断,最后如果符合或者不符合返回一个return值