【LeetCode】Linked List Cycle

【LeetCode】Linked List Cycle

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

称号

Given a linked list, determine if it has a cycle in it.

Follow up:
Can you solve it without using extra space?

解答

首先要注意空链表不成环;不能开额外的空间,即空间复杂度是o(1),可採用“快慢指针”查检查链表是否含有环,假设在快的指针可以追上慢的指针,则有环。否则无环。

/**
 * Definition for singly-linked list.
 * class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode(int x) {
 *         val = x;
 *         next = null;
 *     }
 * }
 */
public class Solution {
    public boolean hasCycle(ListNode head) {
        if(head==null){
            return false;
        }
        ListNode fast=head;
        ListNode slow=head;
        while(fast!=null&&fast.next!=null){  //仅仅要推断快指针是否为空就能够了,可是注意当fast是为结点时,fast.next为空。若推断fast.next.next则会报NullPointerException
            slow=slow.next;
            fast=fast.next.next;
            if(slow==fast){
                return true;
            }
        }
        return false;
    }
}

—EOF—

版权声明:本文博客原创文章。博客,未经同意,不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/117366.html原文链接:https://javaforall.net

(0)
上一篇 2022年1月6日 下午7:00
下一篇 2022年1月6日 下午8:00


相关推荐

  • 05 Redis的RDB日志

    05 Redis的RDB日志05Redis 的 RDB 日志前言一 Redis 做内存数据快照的数据二 Redis 生成 RDB 文件的命令 save 和 bgsave 三 Redis 生成 RDB 文件时的写时复制技术四 Redis 生成 RDB 文件时的快照连拍五 Redis 生成 RDB 文件时的增量快照六 Redis 的混合使用 AOF 日志和内存快照 RDB 总结前言 Redis 避免数据丢失的 AOF 方法的好处是每次执行只需要记录操作命令 需要持久化的数据量不大 只要采用的不是 always 的持久化策略 就不会对性能造成太大影响 但是因为

    2026年3月19日
    2
  • 查看此docker网络连接模式_Docker 网络模式(四种)详细介绍

    查看此docker网络连接模式_Docker 网络模式(四种)详细介绍Docker 网络模式本文首先介绍了 Docker 自身的 4 种网络工作方式 Docker 作为目前最火的轻量级容器技术 有很多令人称道的功能 如 Docker 的镜像管理 然而 Docker 同样有着很多不完善的地方 网络方面就是 Docker 比较薄弱的部分 因此 我们有必要深入了解 Docker 的网络知识 以满足更高的网络需求 四种网络模式我们在使用 dockerrun 创建 Docker 容器时 可以用 net 选

    2026年3月17日
    1
  • 爬虫任务调度:APScheduler 定时执行

    爬虫任务调度:APScheduler 定时执行

    2026年3月14日
    1
  • 基本农田卫星地图查询_别被迷惑了,你手机上的北斗导航App和北斗卫星导航没关系…

    基本农田卫星地图查询_别被迷惑了,你手机上的北斗导航App和北斗卫星导航没关系…澎湃新闻记者王心馨 7 月 31 日 随着北斗三号最后一颗卫星正式组网成功 中国北斗三号全球卫星导航系统全面建成 也正式开启了高质量的全球服务 澎湃新闻 www thepaper cn 注意到 随着北斗导航在民间热度上升 在手机应用端还出现了一款名为北斗导航 高清卫星导航的 App 并且已经登上苹果应用商店免费 App 榜单第一名 霸榜三天 澎湃新闻发现 开发这款应用的公司为深圳逗趣互联科技有限公司 从天眼查

    2026年3月26日
    2
  • WebViewJavaScriptBridge 基本使用

    WebViewJavaScriptBridge 基本使用转载于 https www jianshu com p d12ec047ce52 在 iOS 开发 HybridApp 的时候 有两个 WebView 可以选择 UIWebView amp WKWebView 这两个 WebView 控件 可以完全只借助 iOS 自带的框架进行 OC amp JS 交互 UIWebView 使用 javaScriptCo WKWe

    2026年3月19日
    2
  • fedora root密码_vmware忘记密码

    fedora root密码_vmware忘记密码虚拟机好久没有用了,居然忘记了dedora12的root密码,只记得另一普通用户的密码,怎么办?在网上查了一通,终于找到实现办法来修改root的密码了,步骤如下:进入GRUB的彩色界面后,有3秒钟时间给你。按e进入GRUB,出现了:    Red Hat Enterprise Linux Server (2.6.18-8.e15xen)//看自己的型号了2. 键入e出现(

    2026年2月5日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号