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

LeetCode 202. 快乐数 java题解

https://leetcode.cn/problems/happy-number/description/
哈希表

class Solution {
    public boolean isHappy(int n) {
        if(n==1) return true;
        HashSet<Integer> set=new HashSet<>();
        while(n!=1&&!(set.contains(n))){//没找到结果;没有重复出现过
            set.add(n);//把这个数加到集合,也就是最初的数如果不是1也被加到集合了
            int sum=count(n);//计算平方和
            n=sum;//作为下一个数
        }  
        return n==1;//n=1说明找到了
    }
    //计算数字的平方和
    public int count(int n){
        int sum=0;
        while(n!=0){
            sum+=(n%10)*(n%10);//最后一位数的平方
            n=n/10;
        }
        return sum;
    }
}
/*
在过程中,如果有算出的数重复出现,
那么每次出现这个数之后就是相同的过程循环,找不到答案了
*/
http://www.dtcms.com/a/47196.html

相关文章:

  • 【HTML学习笔记基础篇】
  • elpis全栈课程学习之elpis-core学习总结
  • Virtual Box虚拟机安装Mac苹果Monterey和big sur版本实践
  • UI设计——新拟态手机主题锁屏设计分享
  • vmware安装firepower ftd和fmc
  • 计算机毕业设计SpringBoot+Vue.js网上摄影工作室管理系统(源码+文档+PPT+讲解)
  • vector 面试点总结
  • 【Python机器学习】1.2. 线性回归理论:一元线性回归、最小化平方误差和公式(SSE)、梯度下降法
  • C++ 类和对象(上)
  • 使用 REINFORCE 算法强化梯度策略
  • AcWing 蛋糕游戏
  • CSS3(媒体查询、媒体类型、媒体特性、媒体运算符、BFC)
  • Pytest之parametrize参数化
  • 如何使用Spring Boot框架整合Redis:超详细案例教程
  • Java数据结构第十六期:走进二叉树的奇妙世界(五)
  • DeepSeek MLA(Multi-Head Latent Attention)算法浅析
  • Qt的坐标
  • TrustRAG:通过配置化模块化的检索增强生成(RAG)框架提高生成结果的可靠性和可追溯性
  • Redis - 高可用实现方案解析:主从复制与哨兵监控
  • drawDB:一款免费数据库设计工具
  • 从基础到进阶的Java学习技术指南
  • Spring Boot 测试:单元、集成与契约测试全解析
  • 004 rocketmq集群
  • C++杂记——RTTI
  • PageHelper新发现
  • list的模拟实现
  • P2P 下载科普:原理与应用
  • 三数之和_算法
  • 期权学习与期权异动
  • iOS 使用消息转发机制实现多代理功能