《LeetCode力扣练习》代码随想录——哈希表(快乐数---Java)

《LeetCode力扣练习》代码随想录------哈希表(快乐数---Java)



刷题思路来源于 代码随想录

202. 快乐数
Set哈希表------空间复杂度: O(logn)
java 复制代码
class Solution {
    public boolean isHappy(int n) {

        if(n==1){
            return true;
        }

        Set<Integer> hashSet=new HashSet<>();
        hashSet.add(n);

        while(n!=1){

            n=getSum(n);

            if(hashSet.contains(n)){
                return false;
            }

            hashSet.add(n);

        }

        return true;

    }

    private int getSum(int n){

        int result=0;

        while(n!=0){

            int temp=n%10;
            result=result+(temp*temp);
            n=n/10;

        }

        return result;

    }
}
快慢指针------空间复杂度: O(1)
java 复制代码
class Solution {
    public boolean isHappy(int n) {

        if(n==1){
            return true;
        }

        int slow=getSum(n);
        int fast=getSum(getSum(n));

        while(slow!=fast){

            if(fast==1){
                return true;
            }

            slow=getSum(slow);
            fast=getSum(getSum(fast));

        }

        return fast==1?true:false;

    }

    private int getSum(int n){

        int result=0;

        while(n!=0){

            int temp=n%10;
            result=result+(temp*temp);
            n=n/10;

        }

        return result;

    }
}

相关推荐
秋野酱3 分钟前
Spring Boot 项目的计算机专业论文参考文献
java·spring boot·后端
士别三日&&当刮目相看10 分钟前
数据结构*优先级队列(堆)
java·数据结构
香饽饽~、15 分钟前
【第二篇】 初步解析Spring Boot
java·spring boot·后端
坎布里奇26 分钟前
java -jar命令运行 jar包时如何运行外部依赖jar包
java·pycharm·jar
冷yan~36 分钟前
GitHub文档加载器设计与实现
java·人工智能·spring·ai·github·ai编程
CodeBlossom42 分钟前
java加强 -stream流
java·windows·python
理想奋斗中1 小时前
idea中Lombok失效的解决方案
java·intellij-idea·lombok
保利九里1 小时前
java中的方法详解
java·开发语言·python
旋风菠萝1 小时前
项目复习(1)
java·数据库·八股·八股文·复习·项目、