主要是查看HashMap中是否存储n,如果存储就说明非快乐数
各位的数平方相加的方法
1 class Solution { 2 public boolean isHappy(int n) { 3 HashMap<Integer,Integer> map=new HashMap<>(); 4 5 while(getSum(n)!=1){ 6 int ans=getSum(n); 7 if(map.containsKey(ans)){ 8 return false; 9 } 10 map.put(ans,map.getOrDefault(ans,0)+1); 11 n=ans; 12 } 13 return true; 14 } 15 public int getSum(int n){ 16 int sum=0; 17 while(n>0){ 18 int tem=n%10; 19 sum=tem*tem+sum; 20 n=n/10; 21 } 22 return sum; 23 } 24 }
标签:map,HashMap,int,sum,快乐,ans,Q28,LeetCode202,tem From: https://www.cnblogs.com/cff1/p/18246708