202. 快乐数

java 复制代码
class Solution {
    public boolean isHappy(int n) {
        int index1 = n;
        int index2 = n;
        while(true){
            index1 = sum(index1);
            index2 = sum(sum(index2));
            if(index1==1 || index2==1)
                return true;
            if(index1 == index2)
                return false;  
        }
    }

    public int sum(int n){
        int ans = 0;
        while(n!=0){
            ans += (n%10)*(n%10);
            n = n/10;
        }
        return ans;
    }
}

快乐数,一点都不快乐

要点:

只有两种情况

1.一直往后算,直到算到1。

2.一直往后算,会循环回来到一个之前算过的数,构成一个环。

一般会想是否会一直加到一个非常大的数字,是不会的(证明麻烦,记住就好)
验证是否有环用快慢指针。

相关推荐
HZZD_HZZD2 分钟前
CSDN_批发市场水电漏损归因算法LAM的原理与落地
嵌入式硬件·物联网·算法
shirsl2 小时前
算法 Day 5 树 / 二叉树 + DFS
数据结构·python·算法
木子算法2 小时前
非凸、离散、还耦合:论文里的求解方法是一条四步流水线
人工智能·算法·目标跟踪
虚无的纽扣2 小时前
【力扣刷题】第二天:无重复字符的最长字串、移动零问题
算法·leetcode·排序算法
多弗朗皮卡丘2 小时前
数据结构9:排序算法
c语言·数据结构·排序算法
张祥6422889043 小时前
牛顿迭代法求解开普勒方程:从RTKLIB源码到数值分析
人工智能·算法·机器学习
Niuguangshuo3 小时前
论文解读:Deep Speech 2,工业级英中端到端 ASR 系统报告
算法·音视频·语音识别
钓鱼的肝3 小时前
csp-j-s总结(2)
c++·经验分享·笔记·算法·青少年编程
奇妙之二进制3 小时前
机器人导航路径规划算法入门(6)Dijkstra(迪杰斯特拉)算法深入解析
算法·导航
Niuguangshuo3 小时前
论文解读:Qwen2-Audio,阿里的通用音频语言模型
算法·音视频·语音识别