环形链表笔记(自用)

环形链表



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

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

相关推荐
zwenqiyu24 分钟前
非线性字符串数据结构串讲
数据结构·c++·学习·算法
东华万里1 小时前
第32篇 数据结构入门 单链表的增删查改实现
数据结构·链表
文祐2 小时前
C语言用双向链表实现单调递减(递增)队列
c语言·开发语言·链表
liuyicenysabel3 小时前
多服务上线日记二:
服务器·笔记·学习
OOJO4 小时前
哈希表实现
数据结构·哈希算法·散列表
凉、介4 小时前
ARMv8 架构下的刷 Cache 操作
c语言·笔记·学习·架构·嵌入式·arm
cmes_love4 小时前
如何下载沪深股票市场的行情数据,包括委托、成交、订单薄、沪深股票、etf、可转债、指数五档订单薄数据,买一到买五、卖一到卖五历史行情数据笔记
大数据·笔记
摇滚侠5 小时前
Apache Skywalking 实战 阅读笔记 第二章
笔记·apache·skywalking
chushiyunen5 小时前
word使用笔记(二)、邮件合并(模板套用)
笔记·word