代码随想录 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的链表题

相关推荐
踩坑记录3 分钟前
leetcode 92. 反转链表 II 区间反转(不是整条链表反转)
leetcode·链表
cici158746 分钟前
含风光储燃的微电网能量管理系统(PSO优化)
算法
Das118 分钟前
图像色彩迁移技术算法及基本原理
算法
Titan202420 分钟前
C++11学习笔记
c++·笔记·学习
70asunflower22 分钟前
C/C++ 自定义函数的常用规范:从入门到工程实践
c语言·c++
发疯幼稚鬼22 分钟前
二叉树的广度优先遍历
c语言·数据结构·算法·宽度优先
谭欣辰24 分钟前
C++ DFS 与 BFS 剪枝方法详解
c++·算法·剪枝
c++之路25 分钟前
C++ 预处理器
开发语言·c++
Via_Neo33 分钟前
乘积最大问题
数据结构·算法
CN-Dust39 分钟前
【C++专题】格式化输出与输入
开发语言·c++·算法