当前位置: 首页 > news >正文

【算法双指针篇】快乐数

https://leetcode.cn/problems/happy-number/description/

题目分析:

对于任意一个正整数,替换k轮次后,结果要么是1,要么是无限循环且始终不等于1,没有第三种可能。

为什么只有【变为1】或【进入循环】两种可能?

  • 1 <= n <= 2^31 - 1
  • n能表示的最大整数是2147483647,10位数,它能表示的最大的各位平方和是260
  • 9位数,最大的数999999999,它能表示的最大的各位平方和是9^2*9=729
  • 而3位数,最大的数是999,它能表示的最大的各位平方和是9^2*3=243

即对任意整数,第一次bitSum()后,结果一定是三位数——>第二次bitSum()后,结果一定<=243

也就是说,无论这个数字是多少,在经过两轮的bitSum()之后,得到的数字一定<=243

这个过程一定会进入一个【有限状态集合】:在数字<=243之后,所有可能出现的数字,只有0~242这243种可能

由鸽巢定理可知:进入有限状态后,最多再执行244次bitSum(),就一定会出现一个之前出现过的数字

  • 重复的数字是1:永远停留在1,这就是快乐数
  • 重复的数字不是1,而是一个循环:非快乐数

举例:

1.数字2

非快乐数

2.数字19

19 → 82 → 68 → 100 → 1

快乐数

算法思想:快慢指针

快指针:每次走2步

慢指针:每次走1步

题解:

http://www.jsqmd.com/news/669644/

相关文章:

  • 【AI面试八股文 | 面试题库】AI工程师面试题库:100+来源的系统性解题思路
  • Alibaba DASD-4B Thinking 对话工具 Agent 智能体架构设计与开发实战
  • 想学斯坦福CS231A计算机视觉?先看看这份Python与线性代数自测清单
  • 从药剂师到莎士比亚:一个老教授用《哈姆雷特》告诉你,大学教育的真正价值是什么
  • AGI不是训练完就交付——揭秘OpenAI内部仍在迭代的4阶段自我校准流水线(含实时奖励重标定模块)
  • 终于找到解锁claude的方法了
  • 深入浅出数组
  • FireRedASR Pro版本对比与升级指南:从v1.0到v2.0的性能飞跃
  • 2026年比较好的江苏庆典仪式活动策划/盐城文旅主题活动策划/盐城党建宣传活动策划/盐城活动策划实力公司推荐 - 品牌宣传支持者
  • Wan2.2-I2V-A14B企业级集成指南:SpringBoot微服务架构下的视频生成API
  • CSS如何制作悬停文字下划线动画_利用width过渡
  • Phi-3-mini模型效果展示:智能生成Java八股文答案与深度解析
  • 2026年靠谱的刺丝滚笼护栏/热镀锌刺丝滚笼/高铁刺丝滚笼厂家推荐 - 行业平台推荐
  • 【AGI药物研发实战白皮书】:SITS2026独家解密——3大AI模型如何将靶点发现周期从5年压缩至11个月
  • 2026年比较好的防水胶粉/憎水增强胶粉厂家精选 - 品牌宣传支持者
  • 3 个用资金费率赚钱的隐藏逻辑
  • x86‌汇编 REPE CMPSB‌ 指令学习
  • 【代码开源】基于STM32的智能路灯控制系统设计
  • 2026年比较好的机场防护栅栏/金属网片防护栅栏/刺网防护栅栏厂家选择指南 - 品牌宣传支持者
  • 【Linux】进程(1)基础
  • Pixel Aurora Engine 算法原理浅析:从扩散模型到惊艳生成
  • 2026年知名的SJA丝杆升降机/非标丝杆升降机/伞齿轮丝杆升降机/SWL丝杆升降机生产厂家推荐 - 行业平台推荐
  • FlowState Lab 赋能智能运维:服务器异常波动检测与根因分析
  • 2026年口碑好的锥齿轮螺旋升降机/滚珠螺旋升降机/螺旋升降机/多台同步螺旋升降机品牌厂家推荐 - 品牌宣传支持者
  • Wan2.2-I2V-A14B一文详解:Diffusers pipeline定制与自定义scheduler实践
  • 一招解决 H5 远程收款:动态支付链接优势
  • FireRedASR-AED-L效果展示:同一人不同语速(慢速/常速/快速)识别对比
  • Kotaemon效果展示:实测文档问答,回答精准度惊艳
  • 项目做了一半想重写?这套前端架构让你少走3年弯路
  • Linux 的 runcon 命令