环形链表笔记(自用)

环形链表



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

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

相关推荐
文涛是个小白呀5 分钟前
Java集合大调研
java·学习·链表·面试
hd51cc12 分钟前
MFC多线程学习笔记三:线程间的通信
笔记·学习
hd51cc14 分钟前
MFC多线程学习笔记四:线程间的同步
笔记·学习·mfc
星空的资源小屋31 分钟前
VNote:程序员必备Markdown笔记神器
javascript·人工智能·笔记·django
wdfk_prog34 分钟前
[Linux]学习笔记系列 -- [block]bfq-iosched
linux·笔记·学习
摇滚侠44 分钟前
Vue 项目实战《尚医通》,实名认证模块静态的搭建,笔记53
vue.js·笔记
embrace991 小时前
【C语言学习】结构体详解
android·c语言·开发语言·数据结构·学习·算法·青少年编程
FFF团团员9091 小时前
树莓派学习笔记4:终端常用指令
笔记·学习
Radan小哥1 小时前
Docker学习笔记—day008
笔记·学习·docker
稚辉君.MCA_P8_Java1 小时前
通义 Go 语言实现的插入排序(Insertion Sort)
数据结构·后端·算法·架构·golang