环形链表笔记(自用)

环形链表



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

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

相关推荐
鹿角片ljp38 分钟前
LeetCode 64:最小路径和复盘|二维 DP 与 ACM 模式完整写法
java·数据结构·算法
彧azz2 小时前
算法设计与分析:贪心与动态规划
数据结构·学习·算法·贪心算法·动态规划
景熙55233 小时前
15.Java 8 Stream 流入门到实战
java·开发语言·数据结构
zjxtxdy4 小时前
SPI通信协议
笔记·单片机
彧azz6 小时前
Linux 网络编程学习总结
linux·网络·笔记·学习·面试
aramae7 小时前
MySQL内置函数(7)
开发语言·笔记·后端·mysql·其他
bessyon7 小时前
信息透明度与决策效率:一个技术视角的分析
笔记
wabs6668 小时前
关于二叉树【力扣572.另一棵树的子树的思考】
数据结构·c++·算法·leetcode·二叉树
hanlin038 小时前
刷题笔记:力扣第41题-缺失的第一个正数
笔记·算法·leetcode
自不量力的A同学9 小时前
开源一站式智能终端 uniTerm v1.9.4 发布
笔记