题目:快乐数:19 解法-哈希表思路: 1.2.3. 复杂度: 时间复杂度: 空间复杂度: 代码: 1234567891011121314151617181920212223242526272829303132333435363738class Solution{private: /* data */public: int getSum(int n) { int sum = 0; int temp = 0; while (n > 0) { temp = n % 10; temp *= temp; sum += temp; n/=10; } return sum; } bool isHappy(int n) { unordered_set<int> record; int sum = 0; while(1) { sum = getSum(n); if(n==1){return true;} if(record.find(sum) != record.end()) {//如果sum在record里面找到了,说明陷入了循环,直接返回false return false; }else{ record.insert(sum); } n=sum; std::cout<<"sum= "<<sum<<std::endl; } //return true; }}; 语法小点: 1. * * *2. * * *