leetcode环形链表(js实现)_环绕链条 js-程序员宅基地

技术标签: 链表  LeetCode  

环形链表

给定一个链表,判断链表中是否有环。

为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。

示例 1:

输入:head = [3,2,0,-4], pos = 1
输出:true
解释:链表中有一个环,其尾部连接到第二个节点。

在这里插入图片描述

示例 2:

输入:head = [1,2], pos = 0
输出:true
解释:链表中有一个环,其尾部连接到第一个节点。
在这里插入图片描述

示例 3:

输入:head = [1], pos = -1
输出:false
解释:链表中没有环。
在这里插入图片描述

解题思路

双指针
使用两个不同速度的快、慢指针遍历链表,慢指针每次移动一步,快指针每次移动两步,如果链表中存在环,最终快慢指针会指向同一个节点,遍历结束,返回true;如链表中没有环,最终快指针会先到达链尾,此时,返回false。

/**
 * Definition for singly-linked list.
 * function ListNode(val) {
 *     this.val = val;
 *     this.next = null;
 * }
 */

/**
 * @param {ListNode} head
 * @return {boolean}
 */
//快慢指针
/*
定义一个快指针和一个慢指针,如果链表没有环,则快指针会先到达链尾,返回false
*/
var hasCycle = function(head) {
    
    if(head == null || head.next == null){
    
        return false
    }
    var slow = head.next
    var fast = head.next.next
    while(slow != fast){
    
        if(fast == null || fast.next == null){
    
            return false
        }
        slow = slow.next
        fast = fast.next.next
    }
    return true
};

在这里插入图片描述

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_41096610/article/details/107858534

智能推荐

Python Jupyter Notebook 显示行数完美解决_jupyter notebook里代码区域怎么出现了行号-程序员宅基地

文章浏览阅读4.8w次,点赞42次,收藏38次。问题:Jupyter Notebook 默认状态下不会在代码左端显示行号,这就导致我们遇到报错时,无法正常调试。图: 解决方案:点击View-->点击Toggle Line Numbers就完成啦。 真的真的强烈推荐大家使用Jupyter Notebook,真心太好用了。(我在Pycharm上运行的程序不知怎么的,不仅直接导致了Pychar..._jupyter notebook里代码区域怎么出现了行号

百度2014校园招聘笔试题 ——深度学习算法研发工程师._算法工程师面试题-程序员宅基地

文章浏览阅读3.5w次,点赞5次,收藏51次。一、简答题1.深度神经网络目前有哪些成功的应用?简述原因。(10分) 2.列举不同进程共享数据的方式(至少三种)。(10分) 3.对于N个样本,每个样本为D维向量,采用欧式距离使用KMN做类预测。(10分)1).给出预测时间复杂度。2).当N很大时,有哪些方法可以降低复杂度?3).k取值的大小对预测方差和偏差有何影响?_算法工程师面试题

maya2022插件开发工具包及官方教学网址如下_maya2022插件开发环境-程序员宅基地

文章浏览阅读1.4k次。maya2022插件开发工具包及官方教学网址如下https://www.autodesk.com/developer-network/platform-technologies/maya?us_oa=akn-us&us_si=81052989-8f9d-4fd5-9558-a6adfa8f3246&us_st=maya%20Devkit阿弥陀佛_maya2022插件开发环境

《封号码罗》python爬虫之抖音分享页破解字体反爬虫进阶实战(六)_douyin有哪些反爬策略-程序员宅基地

文章浏览阅读447次。无敌免责声明:本文主要用于学习技术,切不可用于非法盈利目的,不可用于商业,不可攻击该服务器先放出结果镇楼:{'nickname': 'Dear-迪丽热巴', '抖音ID': '274110380', 'work': '演员', 'signature': '先定一个能达到的小目标,比方说来句签名', '关注数量': '0', 'fans': '5130.4w', 'zan': '17058.8w..._douyin有哪些反爬策略

SecureCRT 设置护眼最佳方案 的字体及颜色_securecrt 护眼色-程序员宅基地

文章浏览阅读5.7k次。SecureCRT远程连接Linux服务器文章目录_securecrt 护眼色

Couldn't open file /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7-程序员宅基地

文章浏览阅读1.5k次。Couldn’t open file /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7CentOS7安装任何软件,比如yum -y install ansible出现错误信息:Couldn't open file /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7名词解释:EPEL:extra packages for enterprise l..._couldn't open file /etc/pki/rpm-gpg/rpm-gpg-key-epel-7

随便推点

js 中文英文混排a-z_IBL with Multiple Scattering in Three.js-程序员宅基地

文章浏览阅读158次。IBL with Multiple Scattering implemented in Three.jsOnline demo & source code (Copy the link and open it in Chrome browser):https://codesandbox.io/s/multiple-scattering-ibl-k4990试着写了英文版的,如果有语法错误欢迎..._averagefresnel

深入理解new[]和delete[]_new delete-程序员宅基地

文章浏览阅读3.9k次,点赞23次,收藏41次。c++的动态内存管理方式和c语言不一样,在c++中使用new和delete来替换c语言中的malloc和free。这里有几个点不一样, 1、new和delete是操作符,malloc和free是函数(我的理解是c++将new和delete约定为操作符而已,new和delete操作符重载函数本质上还是函数) 2、c++有了类的概念,类对象的初始化除了要分配内存,还需要对内存进行初始化!所以,c++必须引入一种新的内存分配方式,既可以像malloc一样开..._new delete

Pathway富集分析气泡图-程序员宅基地

文章浏览阅读4.6k次。data.tsv> pathway = read.table("data.tsv",header = T, sep="\t")> library(ggplot2) > p = ggplot(pathway,aes(Pvalue,Pathway))> p=p + geom_point() > p=p + geom_point..._pathway<-read.table("david.txt",sep = "\t",header = t)

蓝牙音频双剑客(二)--高质量音频分布协议(A2DP) 连接播放音乐断开流程(被连接)介绍_蓝牙a2dp怎么判断是否正在播放-程序员宅基地

文章浏览阅读1.1k次。零. 概述主要介绍下蓝牙协议栈(bluetooth stack)传统蓝牙音频协议之高质量音频分布协议(A2DP) 连接播放音乐断开流程(被连接)介绍一. 声明本专栏文章我们会以连载的方式持续更新,本专栏计划更新内容如下:第一篇:蓝牙综合介绍 ,主要介绍蓝牙的一些概念,产生背景,发展轨迹,市面蓝牙介绍,以及蓝牙开发板介绍。第二篇:Transport层介绍,主要介绍蓝牙协议栈跟蓝牙芯片之前的硬件传输协议,比如基于UART的H4,H5,BCSP,基于USB的H2等第三篇:传统蓝牙._蓝牙a2dp怎么判断是否正在播放

PX4原生固件教程---mc_att_control源码分析(姿态控制)_mc_att_control_main.cpp-程序员宅基地

文章浏览阅读1.8k次。备注:源码对应px4v1.5.5版本,源码链接为https://github.com/PX4/Firmware/blob/v1.5.5/src/modules/mc_att_control/mc_att_control_main.cpp 因为文章较长,在此只贴出文章链接,大家可以前往阿木实验室官网观看,喜欢的也可以下载PDF文档哦。_mc_att_control_main.cpp

C语言的函数是什么?_c怨言的函数含义-程序员宅基地

文章浏览阅读1.7k次。C语言的函数是什么?_c怨言的函数含义

推荐文章

热门文章

相关标签