【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,这种有主动去重性质的类

相关推荐
Satan71242 分钟前
【Java】虚拟机(JVM)内存模型全解析
java·开发语言·jvm
IT学长编程2 小时前
计算机毕业设计 助农产品采购平台的设计与实现 Java实战项目 附源码+文档+视频讲解
java·spring boot·毕业设计·课程设计·毕业论文·计算机毕业设计选题·助农产品采购平台
2401_857297912 小时前
2025校招内推-招联金融
java·前端·算法·金融·求职招聘
编啊编程啊程2 小时前
一文上手Kafka【下】
java·分布式·中间件·kafka
誓则盟约3 小时前
基于Spring框架的分层解耦详解
java·后端·spring
小冉在学习3 小时前
leetcode刷题day32|动态规划Part01(509. 斐波那契数、70. 爬楼梯、746. 使用最小花费爬楼梯)
算法·leetcode·动态规划
Mr_Xuhhh3 小时前
vector
c语言·开发语言·数据结构·算法·链表·visualstudio
旺旺碎冰冰、3 小时前
Java之多态
java·开发语言
今天不coding3 小时前
今年Java回暖了吗
java·开发语言