【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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • iOS锁屏时钟_ios时钟怎么调

    iOS锁屏时钟_ios时钟怎么调当设备在一定时间内没有触控动作,iOS会锁住屏幕。但有些应用程序是不需要锁住屏幕的,比如游戏,视频这类应用。可以通过设置UIApplication的idleTimerDisabled属性来指定iOS是否锁频://禁用休闲时钟[[UIApplicationsharedApplication]setIdleTimerDisabled:YES]; //也可以使用这种语法

    2022年9月27日
    0
  • WebRTC直播技术方案「建议收藏」

    WebRTC直播技术方案「建议收藏」我们都知道,WebRTC是面向互联网的一种即时通信标准,由于被Chrome、火狐、Safari等主流浏览器支持,并提供了一致和简洁的API,使得开发WebRTC的视频通信应用非常简单和流行。在大多数情况下,我们认为双向视频通信技术和视频直播技术是两种不同的技术,一个做视频通话,一个做单向直播(在以往的直播方案中,绝大部分是采用rtmp协议做直播上行的)。有没有可能使用WebR…

    2022年7月21日
    17
  • 没有智商,善良有个P用

    没有智商,善良有个P用文|江夜雨我们平时最常遇到的麻烦,往往都来自“好人们”。你的大伯,一位家庭健康的坚定守卫者。每天发送各类伪科学:“西医是药,中医是养,你还在迷信西医吗?”“疫苗就是病毒,小孩能受得了吗?”抗住儿媳的巨大压力,他坚决不让自己的孙子接种疫苗,小孩后来成功患上乙肝,小夫妻几乎闹到离婚。他委屈,我是好心啊。你的同事,一位关心全世界人…

    2022年6月4日
    28
  • CGI,FAST-CGI,PHP-FPM的区别

    CGI,FAST-CGI,PHP-FPM的区别

    2021年10月9日
    72
  • stardict 安装真人发声包

    stardict 安装真人发声包

    2021年5月3日
    95
  • 从0到1搭建一款数据平台产品_全国大数据采集软件免费

    从0到1搭建一款数据平台产品_全国大数据采集软件免费大数据平台基础理论之数据集成篇。

    2022年9月17日
    0

发表回复

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

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