问题就在于如何判断无限循环?
我是要求最多循环20次

class Solution {public:bool isHappy(int n) {int sum = 0;int a = 0;int count = 0;while(sum != 1){sum = 0;while(n != 0){a = n%10;sum += a*a;n /= 10;}n = sum;count++;if(count > 20)return false;}return true;}
};
//如何判断无限循环始终变不到1

看了下别人的方法,不是快乐数的数字会重复某些过程,因此把过程中的每一个结果记录以下,有重复的肯定不是快乐数。

class Solution {public:bool isHappy(int n) {unordered_set<int> mySet;int sum = 0;int a = 0;while(sum != 1){sum = 0;while(n != 0){a = n%10;sum += a*a;n /= 10;}n = sum;if(mySet.find(sum) != mySet.end())return false;mySet.insert(sum);}return true;}
};

2022-1-18 Leetcode 202.快乐数相关推荐

  1. LeetCode 202. 快乐数【哈希表】

    202. 快乐数 编写一个算法来判断一个数 n 是不是快乐数. 「快乐数」 定义为: 对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和. 然后重复这个过程直到这个数变为 1,也可能是 无限 ...

  2. leetcode 202. 快乐数 思考分析(哈希集合与双指针解)

    1.题目 编写一个算法来判断一个数 n 是不是快乐数. 「快乐数」定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变 ...

  3. LeetCode 202. 快乐数(快慢指针)

    1. 题目 2. 解题 一个数经过若干次各位数平方和后,会等于它自己 使用类似环形链表的快慢指针法,最终快慢指针相遇,若不为1则是不快乐数 class Solution {public:int bit ...

  4. leetcode 202 快乐数

    class Solution { public:bool isHappy(int n) {unordered_map<int,bool> m;while(n!=1){m[n]=true;i ...

  5. Leetcode 202. 快乐数 解题思路及C++实现

    解题思路: 用递归的方法,出现1,就返回true,这里用了 unordered_map 来记录是否会出现循环.(也可以用unordered_set) 通过计算余数和商,来得到每个位置数字的平方和.具体 ...

  6. 129. Leetcode 202. 快乐数 (哈希表)

    class Solution:def isHappy(self, n: int) -> bool:set_ = set()while 1:sum_ = self.getSum(n)if sum_ ...

  7. Leetcode 202.快乐数(哈希容器来检测是否出现重复)

    传送门:力扣 所学知识: 1.求和过程,去数值的单数操作,使用while(n)来操作.很强. int getSum(int n) {int sum = 0;while (n) {sum += (n % ...

  8. 算法训练Day6 | LeetCode:242. 有效的字母异位词(数组作哈希表);349. 两个数组的交集(Set作哈希表);202.快乐数 (Set作哈希表);1. 两数之和(Map作哈希表)

    目录 LeetCode242. 有效的字母异位词 方法:数组作哈希表 1. 思路 2. 代码实现 3. 复杂度分析 4. 思考 Leetcode349. 两个数组的交集 方法一:用Set作HashMa ...

  9. LeetCode Algorithm 202. 快乐数

    202. 快乐数 Ideas 快乐数的判断逻辑其实挺简单的,按照定义去循环执行就可以了. 关键是如果不是快乐数怎么结束循环. 我们猜测会有以下三种可能: 最终会得到 1 最终会进入循环 值会越来越大, ...

最新文章

  1. 系统架构的过程 浮现式设计
  2. 58 Node.js中操作mongoDB数据库
  3. linux上安装配置vsftpd
  4. while(getchar()=='\n')continue;为什么作用是清空行
  5. function函数的使用
  6. 苦逼的.net程序员, 转行高富帅iOS移动开发
  7. 攻略:三大秘籍让你笑傲IT职场!
  8. Xshell代理访问外网或者公司的内网
  9. HoloLens开发手记-世界坐标系 Coordinate systems
  10. springboot自定义异常(全局捕获)
  11. 全国多地元旦迎雾霾天气 京津冀霾明天短暂减弱
  12. 关于卷积,池化,前向传播,反向传播,全连接层,通道数的一些概念
  13. C++指针、空指针、野指针使用的一些总结
  14. 通过IO口控制STC15F2K60S2系列单片机输出pwm
  15. 图像金字塔——实现图像融合
  16. 帝国CMS系统目录结构介绍
  17. 逆函数求导公式_反三角函数_反三角函数定义域_反三角函数公式大全_反三角函数求导_【问他】...
  18. QPS 与 TPS是什么
  19. 计算机四级题类型,全国计算机四级网路工程师考试题目分为几大类型,各多少分?...
  20. datagrid的deleteRow使用

热门文章

  1. 智能门锁“激战正酣”
  2. python微博爬虫分析_基于Python的新浪微博爬虫研究
  3. 4412 audio 分析
  4. java8新特性:对map集合排序,根据key或者value操作排序(升序、降序)
  5. LuaJit Trace Compiler剖析
  6. Enigma Protector脱壳
  7. 苹果电脑MAC地址怎么查询
  8. 51单片机开发实例 基于51单片机的光控灯
  9. linux刷分区表,Ubuntu更新致MBR破坏 误操作丢失分区表
  10. 客户端开屏广告适配的一点经验