【d54_2】【Java】【力扣】142.环形链表

思路

关于判断是否重复的就hashSet,这种有主动去重性质的类

新建一个hashSet

遍历链表并放进hashSet,

如果不能放,说明这个遍历过,这个就是环的地方

如果最后到遍历到null,说明没环

代码

复制代码
/**
 * Definition for singly-linked list.
 * class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode(int x) {
 *         val = x;
 *         next = null;
 *     }
 * }
 */
public class Solution {
    public ListNode detectCycle(ListNode head) {
         //都加入hashset,listNode是地址引用,节点一定唯一
            //如果有不能添加的,返回当前节点
            HashSet<Object> set = new HashSet<>();
            ListNode cur = head;
            while (cur != null) {
                //如果能添加,continue
                if(!set.add(cur)){
                 return cur;   
                }
                 cur = cur.next;
            }
            //等于null,退出,所以没有环,返回null
            return null;
    }
}

记录

总结

关于判断是否重复的就hashSet,这种有主动去重性质的类

相关推荐
₍˄·͈༝·͈˄*₎◞ ̑̑码几秒前
多线程——线程安全问题
java·线程安全
皙然4 分钟前
深入浅出 JVM:从内存结构到性能调优的全维度解析
java·jvm
一叶落4386 分钟前
LeetCode 6. Z 字形变换(C语言详解)
c语言·数据结构·算法·leetcode
冬天豆腐20 分钟前
Springcloud,Nacos管理,打jar包后,启动报错
java·spring cloud·maven·jar
redgxp38 分钟前
SpringBoot3整合FastJSON2如何配置configureMessageConverters
java
空空kkk42 分钟前
Java集合——List
java
telllong42 分钟前
C++20 Modules:从入门到真香
java·前端·c++20
米粒11 小时前
力扣算法刷题 Day 15
算法·leetcode·职场和发展
程序员小崔日记1 小时前
一道基础计算题卡在 40 分,求助判题规则问题
java·算法·竞赛
是Yu欸1 小时前
LangGraph 智能体状态管理与决策
java·javascript·数据库