leetcode刷题202 快乐数 Happy Number(简单) Python Java

解决 Java 中的快乐数字问题:有用的提示 Java 是一种多功能且功能强大的编程语言,可用于从 Web 开发到移动应用程序开发等广泛的应用程序。Java 开发人员经常遇到的一个有趣的问题是“快乐数字”问题。在这篇博客中,我们将探讨什么是快乐数字,为什么它们在 Java 中很重要,并提供有关如何有效解决此问题的有用提示。我们还将讨论 Java 环境中垃圾收集的作用。 阅读详情

题目描述

编写一个算法来判断一个数是不是“快乐数”。

一个“快乐数”定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是无限循环但始终变不到 1。如果可以变为 1,那么这个数就是快乐数。

示例:

输入: 19
输出: true
解释:
1² + 9² = 82
8² + 2² = 68
6² + 8² = 100
1² + 0² + 0² = 1

解题思路:

1.如果是快乐数的话,那么拆分加和到最后的话,变为1,程序结束
2.如果不是快乐数,进行一个循环,使用一个列表来存储每次数字做的加和,并且每次循环判断是否在列表中

class Solution(object):
    def isHappy(self, n):
        """
        :type n: int
        :rtype: bool
        """
        d = []
        while True:
            res = 0
            while n:
                res += (n%10)**2  # **幂:返回x的y次幂
                n /= 10
            if res == 1:  # 如果结尾是1表示是快乐数
                return True
            if res in d:  # 如果列表中已存在,代表会无限死循环,永远不可能是快乐数
                return False
            d.append(res) # 将本次循环的res加到列表中
            n = res # 更新当前的n

 

以下是Java版本:

题目大意:对任意一个正整数,不断求个数位上数字的平方和,若最终收敛为1,则该数字为happy number,否则程序可能从某个数开始陷入循环。 

解题思路:对这个数字的每个数位求平方和,如果如和为1或者平方和是之前出现过的就不进行求和,根据最后的结果判断是不是一个开心数字。

1.	public  boolean isHappy(int n) {  
2.	        if (n == 0)  
3.	            return false;  
4.	        if (n == 1)  
5.	            return true;  
6.	        int temp = 0;  
7.	        //set 储存中间的结果  
8.	        Set<Integer> set=new HashSet<>();  
9.	        while (n != 1) {  
10.	            if (set.contains(n))  
11.	                return false;  
12.	            set.add(n);  
13.	            while (n != 0) {  
14.	                temp=temp+(n%10)*(n%10);  
15.	                n /= 10;  
16.	            }  
17.	            n = temp;  
18.	            temp=0;  
19.	        }  
20.	        return true;  
21.	    }  

 

水电站数字孪生:水力发电在可视化领域的应用 为智慧水坝领域提供了 B/S 架构的基于 WebGL 的图形引擎,与 GIS、粒子仿真、虚拟现实、边缘计算等技术相结合,融合多元业务系统数据,形成数字孪生界面,助力水利水电工程进一步提升数字化水平,乃至为整个工业领域添砖加瓦。 阅读详情

相关推荐

【银行测试】手机银行APP专项项目+测试点汇总(一)

1、手机银行APP转账项目讲解面试官:请介绍一下你所负责的模块如何进行的测试?求职者:好的,我最近测试的是XX银行的手机银行App项目。这个项目里面包含了转账、转账额度调整、网银转账、交易明细、添加账户、存款、投资理财、生活缴费等功能模块。我主要负责了转账模块,这个大模块中包含了智能转账、手机转账、语音转账、预约转账、收款人管理等5个子模块,我首先介绍一下我们生活中使用最多的手机转账子模块。对于转账需要关注的是转账前、转账中、转账后这三个状态下的测试。

m0_70102063的博客 1604

【LeetCode 简单题】52-快乐数

声明: 今天是第52道题。编写一个算法来判断一个数是不是“快乐数”。以下所有代码经过楼主验证都能在LeetCode上执行成功,代码也是借鉴别人的,在文末会附上参考的博客链接,如果侵犯了博主的相关权益,请联系我删除 (手动比心ღ( ´・ᴗ・` )) 正文 题目:编写一个算法来判断一个数是不是“快乐数”。 一个“快乐数”定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然...

weixin_41011942的博客 212

在 STM32CubeIDE 中针对 STM32F407 移植 ThreadX

在 STM32CubeIDE 中针对 STM32F407 移植 ThreadX,不依赖盗版破解的Keil MDK、IAR等软件。

wangyuewu08的博客 3374

经典C语言算法题之快乐数

快乐数解法-很快乐1、题目描述2、题目分析3、代码实现4、题解心得 1、题目描述 编写一个算法来判断一个数 n 是不是快乐数。 「快乐数」定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。如果 可以变为 1,那么这个数就是快乐数。如果 n 是快乐数就返回 True ;不是,则返回 False 。 示例: 输入:19 输出:true 解释: 12 + 92 = 82 82 + 22 = 68 62 + 82 =

静水流深 5236

Innovus每日精要 | 用setScanReorderMode优化扫描链,效率翻倍!

在数字后端物理设计的世界里,扫描链优化就像修路一样,既要保证数据流的顺畅,又要尽量减少绕路和资源浪费。它的主要任务是优化扫描链的连接方式,确保数据能快速、安全地流动。无论是多电压域设计、分区设计,还是复杂的逻辑门,它都能帮你搞定。后,你会发现它不仅能帮你节省时间,还能让你的设计更优雅、更高效。下次遇到扫描链问题时,不妨试试这些技巧,说不定你的设计效率会翻倍!,它能帮你搞定扫描链优化的那些事儿,让你的设计更高效、更优雅。接下来,我们看看这个命令的几个关键选项,以及它们的实际用途。扫描链优化看似枯燥,但掌握。

weixin_50820814的博客 1442

PostgreSQL数据库全攻略:从入门到精通

本文是一份PostgreSQL数据库综合指南,涵盖安装配置、基础操作和高级管理。主要内容包括:1) PostgreSQL简介与各平台安装方法;2) 数据库基本操作,如创建数据库/表、CRUD操作、用户权限管理;3) 高级功能包括索引优化、事务控制、视图、存储过程、触发器和扩展模块;4) 数据库管理维护,涉及配置调优、备份恢复、性能监控和日常维护;5) 安全设置与高可用方案。指南提供了从入门到进阶的实用知识,强调结合官方文档进行深入学习,帮助用户高效使用这一功能强大的开源关系型数据库系统。

索大神的博客 1969

什么叫做一个数的因子、因数

因子就是所有可以整除这个数的数,不包括这个数自身.(就是一个数的约数,比如20的因子有 1 2 4 5 10 20) 因数包括这个数本身而因子不包括, 如:比如15的因子是1,3,5   而因数为1,3,5,15.  完数是指此数的所有因子之和等于此数,例如:28=1+2+4+7+14.

G_66_hero的博客 3万+

SAP FICO 科目余额查询表开发说明书(包括测试样例、程序代码仅作参考,不保证一定可以运行)

SAP FICO 科目余额查询表开发说明书(包括开发源代码、测试样例)

我好像病了的博客 1040

快乐数(Java)

快乐数(Java)

m0_57275939的博客 2729

PointNet++改进策略目录

后续我将如何使用文章中创新点加入的PointNet++中代码实现部分进行更新。

u012901740的博客 2195

【图像超分】论文精读:Interpreting Super-Resolution Networks with Local Attribution Maps(LAM)

论文题目:Interpreting Super-Resolution Networks with Local Attribution Maps —— 用局部归因图解释超分辨率网络CVPR 2021!必读文章!必须会的可视化手段!很多文章中都会对比LAM!图像超分辨率 (SR) 技术发展迅速,受益于深度网络的发明及其连续突破。然而,众所周知,深度学习和深度神经网络很难解释。SR网络继承了这种神秘的性质,很少有作品试图理解它们。在本文中,我们对 SR 网络进行了归因分析。

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 547

python快乐数字_LeetCode 202: 快乐数Happy Number

题目:编写一个算法来判断一个数是不是 “快乐数”。一个 “快乐数” 定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是无限循环但始终变不到 1。如果可以变为 1,那么这个数就是快乐数。Write an algorithm to determine if a number is “happy”.A happy number is a n...

weixin_39989941的博客 704

手把手教你学simulink(26.8)--控制算法场景示例:基于强化学习的无人机姿态稳定控制系统

首先,我们需要定义无人机的姿态稳定控制环境。环境包括无人机的状态(姿态角、角速度等)和动作(电机转速)。我们还需要定义奖励函数,用于评估控制器的表现。matlab深色版本% 定义环境% 定义状态空间% 12个状态变量% 定义动作空间% 电机转速范围奖励函数用于评估控制器的表现。我们可以根据无人机的姿态误差、角速度误差以及控制输入的变化率来设计奖励函数。具体来说,当无人机的姿态接近设定值时,给予正奖励;当姿态误差较大或控制输入变化剧烈时,给予负奖励。matlab深色版本。

MHD0815的博客 494

LeetCode 202. Happy Number--Python解法

LeetCode 202. Happy Number–C++,Python解法 LeetCode题解专栏:LeetCode题解 LeetCode 所有题目总结:LeetCode 所有题目总结 大部分题目C++和Python的解法都有。 题目地址:Happy Number - LeetCode Write an algorithm to determine if a number is “ha...

个人博客 801

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

[LeetCode] 202. 快乐数

1 题目描述 编写一个算法来判断一个数是不是“快乐数”。 一个“快乐数”定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是无限循环但始终变不到 1。如果可以变为 1,那么这个数就是快乐数。 示例: 输入: 19 输出: true 解释: 12 + 92 = 82 82 + 22 = 68 62 + 82 = 100 12 + 02 ...

努力变得不菜的菜鸡的博客 169

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

Leetcode【快慢指针 链表找环思想】| 202. 快乐数

这里写自定义目录标题题目解题思路java实现 题目 编写一个算法来判断一个数 n 是不是快乐数。 「快乐数」定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。如果 可以变为 1,那么这个数就是快乐数。 如果 n 是快乐数就返回 True ;不是,则返回 False 。 示例:  输入:19  输出:t...

Cherils的博客 329

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

数c++ python个数_LeetCode简单题:202. 快乐数(Python,C++,Java)

一.解法https://leetcode-cn.com/problems/happy-number/要点:快慢指针牵涉到有没有环的时候经常要考虑快慢指针,用来防止无限循环的发生,详见141.环形链表的解法。Python,C++,Java都用了相同的快慢指针法,如果最后能得到1,那么最终fast和slow最终都为1,如果有环,那么fast和slow都为一个非1的数,事实上所有的非快乐数最终都会进入 ...

weixin_39926104的博客 172

leetcode 202. Happy Number

Write an algorithm to determine if a number is "happy". A happy number is a number defined by the following process: Starting with any positive integer, replace the number by the sum of the squa...

djph26741的博客 173

[Leetcode 202, Easy] Happy Number

[Leetcode 202, Easy] Happy Number

算法的实践 558

算法刷题-哈希表-快乐数

该用set的时候,还是得用set。

lw的博客 1297

python快乐数字_LeetCode 202. Happy Number(快乐数)

题目描述Write an algorithm to determine if a number is "happy".A happy number is a number defined by the following process: Starting with any positive integer, replace the number by the sum of the squares...

weixin_29414105的博客 517

[LeetCode] 202. Happy Number 快乐数

Write an algorithm to determine if a number is "happy". A happy number is a number defined by the following process: Starting with any positive integer, replace the number by the sum of the squares o...

weixin_30590285的博客 117

LeetCode 202. Happy Number (Hash Set)

Write an algorithm to determine if a number n is “happy”. A happy number is a number defined by the following process: Starting with any positive integer, replace the number by the sum of the squares of its digits, and repeat the process until the number e

ganlanA的博客 193

202.快乐数

编写一个算法来判断一个数 n 是不是快乐数。 「快乐数」定义为: 对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。 然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。 如果 可以变为 1,那么这个数就是快乐数。 如果 n 是快乐数就返回 true ;不是,则返回 false 。 示例 1: 输入:19 输出:true 解释: 1 * 1 + 9 * 9 = 82 8 * 8 + 2 * 2 = 68 6 * 6 + 8 * 8 = 100 1 * 1 + 0 * 0

weixin_48732879的博客 195

LeetCode 202. Happy Number

LeetCode 202. Happy Number 题目描述: 编写一个算法来判断一个数是不是“快乐数”。 一个“快乐数”定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是无限循环但始终变不到 1。如果可以变为 1,那么这个数就是快乐数。 示例: 输入: 19 输出: true 解释: 12 + 92 = 82 82 + 22 = ...

qq_30122883的博客 210

面试经典算法题70-快乐数

公众号:阿Q技术站。

qq_44630255的博客 294
上一篇: NG深度学习第一门课作业1 构建一个逻辑回归分类器来识别猫
下一篇: NG深度学习第一门课作业2 通过一个隐藏层的神经网络来做平面数据的分类
SpringRolls
博客等级 码龄9年 73粉丝 129原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值