环形链表笔记(自用)

环形链表



不管怎么样slow最多走半圈了,

快慢指针slow走一步,fast走两步最合适,因为假设fast和slow相差n每一次他们前进,就会相差n-1步,这样他们一定会相遇,如果是环形链表的话。
代码

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

自用笔记,文章质量不行!!!

相关推荐
David猪大卫5 小时前
【C++修炼】智能指针使用及原理
开发语言·c++·经验分享·笔记·学习·考研·面试
不会就选b7 小时前
算法日常・每日刷题--<贪心>7
数据结构·算法·leetcode
爱吃苹果的日记本8 小时前
数据结构第一课
c语言·数据结构·数据库·学习·c#
张小姐的猫9 小时前
【AI大模型接入SDK】 —— Gemini接入封装
android·数据结构·数据库·c++·人工智能·python
自小吃多10 小时前
高云FPGA ModelSim中的仿真
笔记·嵌入式硬件·fpga开发
闲坐含香咀翠10 小时前
从 132MB 到 25MB:列式存储怎么把 CPU 缓存命中率提上去的
前端·数据结构·性能优化
码少女10 小时前
数据结构——快速排序
数据结构
shehuiyuelaiyuehao11 小时前
算法39,位运算,消失的两个数字
java·数据结构·算法
小刘在重生~11 小时前
Java 异常体系完整笔记
java·笔记·python
泡泡鱼(敲代码中)11 小时前
Python语法技术学习笔记
开发语言·笔记·python·学习·pycharm