判断链表中是否有环(力扣141.环形链表)

这道题要用到快慢指针。

先解释一下什么是快慢指针。

快慢指针有两个指针,走得慢的是慢指针,走得快的是快指针。

在这道题,我们规定慢指针一次走一步,快指针一次走2步。

如果该链表有环,快慢指针最终会在环中相遇;如果没有环,fast指针走到尾节点就结束循环

/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     struct ListNode *next;
 * };
 */
bool hasCycle(struct ListNode *head) {
    struct ListNode*fast=head,*slow=head;
    while(fast&&fast->next){
        slow=slow->next;
        fast=fast->next->next;
        if(fast==slow){
            return true;
        }
    }
    return false;
}

下面我将用数学工具证明一下(其实就是简单的追及问题而已啦)

相关推荐

  1. leetcode 141 判断是否存在

    2024-07-12 05:06:03       52 阅读
  2. 单向环形的创建与判断是否

    2024-07-12 05:06:03       28 阅读
  3. 100】141.环形

    2024-07-12 05:06:03       57 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-12 05:06:03       70 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-12 05:06:03       74 阅读
  3. 在Django里面运行非项目文件

    2024-07-12 05:06:03       62 阅读
  4. Python语言-面向对象

    2024-07-12 05:06:03       72 阅读

热门阅读

  1. ls命令学习记录1

    2024-07-12 05:06:03       29 阅读
  2. ARM Ubuntu 主机安装指定版本Python

    2024-07-12 05:06:03       27 阅读
  3. sqlite3 — DB-API 2.0 interface for SQLite databases

    2024-07-12 05:06:03       24 阅读
  4. arm 版的 deb、rpm、AppImage 都有什么区别

    2024-07-12 05:06:03       30 阅读
  5. 【无标题】

    2024-07-12 05:06:03       26 阅读
  6. IT专业高考假期入门指南

    2024-07-12 05:06:03       27 阅读
  7. 墨烯的C语言技术栈-C语言基础-012

    2024-07-12 05:06:03       28 阅读
  8. Kubernetes(k8s)架构的工作原理

    2024-07-12 05:06:03       29 阅读
  9. 【问题记录】xxl-job admin端锁超时问题

    2024-07-12 05:06:03       26 阅读
  10. CNN -1 神经网络-概述2

    2024-07-12 05:06:03       27 阅读
  11. 使用 CSS 实现多列布局

    2024-07-12 05:06:03       23 阅读