代码随想录 Leetcode142. 环形链表 II

题目:


代码(首刷看解析 2024年1月13日):

cpp 复制代码
class Solution {
public:
    ListNode *detectCycle(ListNode *head) {
        if (head == nullptr) return nullptr;
        ListNode* fast = head;
        ListNode* slow = head;
        while (true) {
            if(fast->next == nullptr || fast->next->next == nullptr) return nullptr;
            fast = fast->next->next;
            slow = slow->next;
            if(fast == slow) break;
        }
        fast = head;
        while (fast != slow) {
            fast = fast->next;
            slow = slow->next;
        }
        return fast;
    }
};

双指针解决百分之99的链表题

相关推荐
小欣加油18 小时前
leetcode 2536 子矩阵元素加1
数据结构·c++·算法·leetcode·矩阵
橘颂TA18 小时前
【剑斩OFFER】算法的暴力美学——二维前缀和
算法·c/c++·结构与算法
月半流苏18 小时前
Problem: lab-week10-exercise02 Building a Fiber Network
c++·算法·并查集
温宇飞18 小时前
计算机语言中的多态实现
c++
小龙报18 小时前
《VScode搭建教程(附安装包)--- 开启你的编程之旅》
c语言·c++·ide·vscode·单片机·物联网·编辑器
kyle~18 小时前
C++20--- concept 关键字 为模板参数提供了编译期可验证的约束机制
运维·c++
CS_浮鱼18 小时前
【C++进阶】异常
开发语言·c++
努力学算法的蒟蒻19 小时前
day14(11.14)——leetcode面试经典150
算法·leetcode
QT 小鲜肉19 小时前
【C++基础与提高】第十一章:面向对象编程进阶——继承与多态
java·linux·开发语言·c++·笔记·qt
艾莉丝努力练剑19 小时前
【C++:封装红黑树】C++红黑树封装实战:从零实现MyMap与MySet
c++·stl·set·map·红黑树·平衡二叉树