环形链表笔记(自用)

环形链表



不管怎么样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;
}

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

相关推荐
CheerWWW9 分钟前
C++学习笔记——线程、计时器、多维数组、排序
c++·笔记·学习
ljt272496066120 分钟前
Compose笔记(七十六)--拍照预览
笔记·android jetpack
ZC跨境爬虫21 分钟前
dankoe视频笔记:如何培养对自己喜欢之事的痴迷感
人工智能·笔记·搜索引擎
Meme Buoy32 分钟前
18.补充数学1:生成树-最短路径-最大流量-线性规划
数据结构·算法
汀、人工智能34 分钟前
[特殊字符] 第89课:岛屿数量
数据结构·算法·数据库架构·图论·bfs·岛屿数量
九英里路38 分钟前
cpp容器——string模拟实现
java·前端·数据结构·c++·算法·容器·字符串
新手小新1 小时前
C#学习笔记1-在VS CODE部署C#开发环境
笔记·学习·c#
2401_892070981 小时前
顺序栈(动态数组实现) 超详细解析(C++ 语言 + 可直接运行)
数据结构·c++·顺序栈
ZC跨境爬虫1 小时前
Dan koe视频笔记: 个人成长与目标设定的重要性
人工智能·笔记·搜索引擎
漫霂1 小时前
二叉树的翻转
java·数据结构·算法