环形链表笔记(自用)

环形链表



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

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

相关推荐
掘根4 分钟前
【C++STL】二叉搜索树(BST)
数据结构·c++·算法
不想看见40416 分钟前
6.3Permutations -- 回溯法--力扣101算法题解笔记
笔记·算法·leetcode
minglie11 小时前
数学分析中的反例
笔记
代码栈上的思考2 小时前
双指针法:从三道经典题看双指针的核心思想
数据结构·算法
MrGaomq2 小时前
长安通信实习总结
笔记
重生之后端学习3 小时前
114. 二叉树展开为链表
java·数据结构·算法·链表·职场和发展·深度优先
今儿敲了吗4 小时前
18| 差分数组
c++·笔记·学习·算法
浅念-4 小时前
C++ 模板初阶:从泛型编程到函数模板与类模板
c语言·开发语言·数据结构·c++·笔记·学习
Bear on Toilet4 小时前
BFS_FloodFill_46 . 腐烂的橘子问题
数据结构·c++·算法·leetcode·宽度优先
橙河网络4 小时前
橙河网络:国外问卷调查好做吗?有具体的步骤讲解吗?
经验分享·笔记·课程设计