环形链表笔记(自用)

环形链表



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

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

相关推荐
老王熬夜敲代码几秒前
泛型编程的差异抽象思想
开发语言·c++·笔记
少许极端4 分钟前
算法奇妙屋(十五)-BFS解决边权为1的最短路径问题
数据结构·算法·bfs·宽度优先·队列·图解算法·边权为1的最短路径问题
客梦10 分钟前
Java教室管理系统
java·笔记
代码游侠16 分钟前
学习笔记——GDB调试工具
linux·开发语言·笔记·学习
QT 小鲜肉21 分钟前
【孙子兵法之中篇】007. 孙子兵法·军争篇
人工智能·笔记·读书·孙子兵法
思成不止于此22 分钟前
MySQL 约束详解:保证数据完整性的核心机制
数据库·笔记·学习·mysql
摇滚侠26 分钟前
零基础小白自学 Git_Github 教程,Action CI/CD 完整实践,笔记23
笔记·git·ci/cd
走在路上的菜鸟28 分钟前
Android学Dart学习笔记第九节 Patterns
android·笔记·学习·flutter
ada7_29 分钟前
LeetCode(python)——94.二叉
python·算法·leetcode·链表·职场和发展
不穿格子的程序员36 分钟前
从零开始写算法——普通数组类题:数组操作中的“翻转技巧”与“前后缀分解”
数据结构·算法