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

手机摄影网站首页找平台推广

手机摄影网站首页,找平台推广,自己建设购物网站,淮南市城乡建设局网站目录 题意 算法思路 过题图片 算法实现 代码解析 复杂度分析 题目链接 结论 题意 判断正整数 n 是不是快乐数。 快乐数定义: (1)每次将正整数替换为它每个位置上的数字的平方和。 (2)重复这个过程直到这个数…

目录

题意

算法思路

过题图片

算法实现

代码解析

复杂度分析

题目链接

结论


题意

判断正整数 n 是不是快乐数。

快乐数定义:

(1)每次将正整数替换为它每个位置上的数字的平方和。

(2)重复这个过程直到这个数变为 1,也可能是无限循环但始终变不到 1。

(3)如果可以变为 1,这个数就是快乐数。

示例
输入:19

输出:true

解释:

1² + 9² = 82

8² + 2² = 68

6² + 8² = 100

1² + 0² + 0² = 1

提示
1 <= n <= 2^31 -1

算法思路

这个问题的关键在于处理可能的无限循环。如果一个数最终会进入一个循环,那么它肯定不是快乐数。因此,我们可以使用哈希集合来记录在迭代过程中出现过的数。如果新生成的数已经在哈希集合中,那么我们可以确定这个数不是快乐数,因为它已经进入了循环。

过题图片

算法实现

以下是使用Java语言实现的算法:

import java.util.Set;
import java.util.HashSet;class Solution {private int getNextNumber(int n) {int res = 0;while (n > 0) {int temp = n % 10;res += temp * temp;n = n / 10;}return res;}public boolean isHappy(int n) {Set<Integer> record = new HashSet<>();while (n != 1 && !record.contains(n)) {record.add(n);n = getNextNumber(n);}return n == 1;}
}

代码解析

  1. getNextNumber 方法:这个方法用于计算给定数的下一个数,即每个位置上的数字的平方和。它通过不断取模和除法操作来实现。

  2. isHappy 方法:这是主要的算法实现。我们使用一个哈希集合 record 来记录出现过的数。在循环中,我们不断计算下一个数,并检查这个数是否已经在 record 中。如果已经在 record 中,说明进入了循环,返回 false。如果计算得到的数为1,说明找到了快乐数,返回 true

复杂度分析

  • 时间复杂度:最坏情况下,我们需要遍历所有可能的数直到找到1或者确定循环。在最坏情况下,这个算法的时间复杂度是 O(k),其中 k 是快乐数序列的长度。对于非快乐数,时间复杂度取决于循环的长度,但在实际应用中,这个循环通常不会太长。

  • 空间复杂度:我们使用了一个哈希集合来存储已经出现过的数,因此空间复杂度是 O(k),其中 k 是不同数的数量。

题目链接

202. 快乐数 - 力扣(LeetCode)

结论

通过使用哈希集合来记录已经出现过的数,我们可以有效地判断一个数是否为快乐数。这种方法简单而高效,能够处理可能的无限循环问题。

写在最后
如果你觉得有帮助到你,请给题解点个赞和收藏,让更多的人看到呀~

也欢迎你关注我,解锁更多图解 LeetCode,一起玩转数据结构与算法!

我是luckilyil,我们下次见!

http://www.dt0577.cn/news/49986.html

相关文章:

  • 洛龙区网站制作建设费用乔拓云智能建站系统
  • 自己做网站要会什么软件下载北京网站优化方案
  • 免费购物网站制作营销是什么意思
  • 日照市五莲县网站建设企业网上的推广
  • mac编辑page转wordpress连云港seo优化
  • wordpress 登录后跳转下载优化大师app
  • 电商网站统计怎么做汕头网站关键词推广
  • 做书架的网站小程序
  • 菏泽网站建设哪好企业培训员工培训平台
  • 品牌网站建设定位免费收录链接网
  • 昆明做网站那家好seo关键词排名系统
  • 网站哪个公司做的比较好的优化网站怎么真实点击
  • 在网站做商城平台需要哪些资质网络seo公司
  • 书店网站建设方案南京seo排名
  • 网站ppt怎么做深圳网站制作公司
  • 石家庄网站制作机构免费制作个人网站
  • 做网站需要哪些资料在线推广企业网站的方法
  • 全国最有实力的信息网络公司排名淘宝关键词优化怎么弄
  • 网站建设趋势2017创建网站要钱吗
  • 在线网站搭建系统常州百度推广代理公司
  • php网站系统官方正版清理优化工具
  • 做网站一定要购买虚拟主机吗线上商城推广软文
  • 怎么做自己的博客网站今日国内新闻大事20条
  • 黑龙江网络科技有限公司广州做seo的公司
  • 广州网站建设公司排行网站流量宝
  • 深圳做网站设计制作开发深圳网站建设系统
  • 中国轻工建设公司网站百度seo优化分析
  • WordPress简约资讯主题关键词排名优化公司推荐
  • 南京营销型网站制作郑州企业网站seo
  • 怎么做网赚网站谷歌官网入口