环形链表笔记(自用)

环形链表



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

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

相关推荐
CV工程师小林18 分钟前
【算法】DFS 系列之 穷举/暴搜/深搜/回溯/剪枝(下篇)
数据结构·c++·算法·leetcode·深度优先·剪枝
LearnTech_1232 小时前
【学习笔记】手写一个简单的 Spring MVC
笔记·学习·spring·spring mvc
-$_$-2 小时前
【LeetCode HOT 100】详细题解之二叉树篇
数据结构·算法·leetcode
大白飞飞2 小时前
力扣203.移除链表元素
算法·leetcode·链表
尘心cx2 小时前
数据结构-栈
数据结构
学无止境\n2 小时前
[C语言]指针和数组
c语言·数据结构·算法
夜雨翦春韭3 小时前
【代码随想录Day29】贪心算法Part03
java·数据结构·算法·leetcode·贪心算法
笑鸿的学习笔记3 小时前
工具笔记之生成图表和可视化的标记语言Mermaid
笔记
kissSimple3 小时前
UE行为树编辑器图文笔记
笔记·ue5·编辑器·unreal engine·unreal engine 5
l1x1n03 小时前
DOS 命令学习笔记
笔记·学习·web安全