您的位置:首页 > 汽车 > 时评 > 汕头企业建站系统模板_山西网站制作_网络营销与策划试题及答案_东莞网络推广营销

汕头企业建站系统模板_山西网站制作_网络营销与策划试题及答案_东莞网络推广营销

2024/12/22 13:52:29 来源:https://blog.csdn.net/hedhjd/article/details/144024130  浏览:    关键词:汕头企业建站系统模板_山西网站制作_网络营销与策划试题及答案_东莞网络推广营销
汕头企业建站系统模板_山西网站制作_网络营销与策划试题及答案_东莞网络推广营销

1. 快乐数

题目链接:

202. 快乐数 - 力扣(LeetCode)icon-default.png?t=O83Ahttps://leetcode.cn/problems/happy-number/description/

 


2. 题目解析

示例1:

  

示例2:

  


3. 算法原理

  

两种情况:我们可以把两种情况都看作为循环,一种循环里都为1,一种都不为1

  

  

但是我们还可以将两种情况和为一种情况:从本题题目可以看出本题一定会是循环,所以我们可以只需要判断环里的那个数是否为1就可以了

  

如何判断链表是否有环

  

1. 定义快慢指针

  

2. 让这两个指针在环的开头开始移动,移动的时候让慢指针每次向右移动1不,快指针向右移动2步 

  

3. 判断相遇时候位置的值,如果为1就是快乐数,否则就不是


4. 代码

class Solution {
public://返回n每一位的平方和int Sum(int n){int sum=0;while(n){int tmp=n%10;//取n的最低位sum+=tmp*tmp;//将最低位的平方给sumn/=10;//干掉最低位}return sum;}bool isHappy(int n) {//cur指向第一个位置,dest指向第二个位置int cur=n,dest=Sum(n);while(cur!=dest){cur=Sum(cur);//走一步dest=Sum(Sum(dest));//走两步}return cur==1;}
};

未完待续~

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com