环形链表笔记(自用)

环形链表



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

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

相关推荐
浩瀚地学1 小时前
【Java】JDK8的一些新特性
java·开发语言·经验分享·笔记·学习
JeffDingAI1 小时前
【Datawhale学习笔记】深入大模型架构
笔记·学习
程序员-King.1 小时前
day143—递归—对称二叉树(LeetCode-101)
数据结构·算法·leetcode·二叉树·递归
a不是橘子2 小时前
03在Ubuntu中验证PV操作
笔记·ubuntu·操作系统·虚拟机·os·pv操作
tangyal2 小时前
渗透笔记1
笔记·网络安全·渗透
fanged3 小时前
STM32(5)--HAL1(TODO)
笔记
仙俊红4 小时前
LeetCode174双周赛T3
数据结构·算法
grd44 小时前
RN for OpenHarmony 小工具 App 实战:屏幕尺子实现
笔记·harmonyos
丝斯20115 小时前
AI学习笔记整理(50)——大模型中的Graph RAG
人工智能·笔记·学习
仍然.5 小时前
JavaDataStructure---二叉搜索树,哈希表,Map和Set
数据结构·散列表