网站建设推销话术案例,织梦移动端网站模板下载地址,建设淘宝客网站源码怎么弄,企业快速建站免费模板提示#xff1a;文章写完后#xff0c;目录可以自动生成#xff0c;如何生成可参考右边的帮助文档 前言
提示#xff1a;这里可以添加本文要记录的大概内容#xff1a;
3月28日练习内容 提示#xff1a;以下是本篇文章正文内容#xff0c;下面案例可供参考
一、题目-… 提示文章写完后目录可以自动生成如何生成可参考右边的帮助文档 前言
提示这里可以添加本文要记录的大概内容
3月28日练习内容 提示以下是本篇文章正文内容下面案例可供参考
一、题目-快乐数
1.题目描述
编写一个算法来判断一个数 n 是不是快乐数。
「快乐数」 定义为
对于一个正整数每一次将该数替换为它每个位置上的数字的平方和。 然后重复这个过程直到这个数变为 1也可能是 无限循环 但始终变不到 1。 如果这个过程 结果为 1那么这个数就是快乐数。 如果 n 是 快乐数 就返回 true 不是则返回 false 。
示例 1 输入n 19 输出true 解释 12 92 82 82 22 68 62 82 100 12 02 02 1 示例 2 输入n 2 输出false 来源力扣LeetCode 链接https://leetcode.cn/problems/happy-number 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。
2.思路与代码
2.1 思路
1.使用hashset集合判断变换之后的数据是否有重复重复则说明该数不是快乐数
2.对数字进行循环变换
3.输出最后的结果是否等于1
2.2 代码
代码如下示例
class Solution {public boolean isHappy(int n) {//利用hashset不可存储重复元素特性SetInteger s new HashSet();while(n ! 1 !s.contains(n)){//如果元素不在集合里面出现过则将其加入集合s.add(n);//对n进行变换n getNext(n);}//返回最后的数字是否等于1return n 1;}//获取下次变换的数private int getNext(int num){//和int sum 0;while(num 0){//取余数即最后一位数字int d num % 10;//把最后一位去掉num / 10;sum d * d;}return sum;}
} 总结
提示这里对文章进行总结