C语言 | Leetcode C语言题解之第142题环形链表II

题目:

题解:

cpp 复制代码
struct ListNode* detectCycle(struct ListNode* head) {
    struct ListNode *slow = head, *fast = head;
    while (fast != NULL) {
        slow = slow->next;
        if (fast->next == NULL) {
            return NULL;
        }
        fast = fast->next->next;
        if (fast == slow) {
            struct ListNode* ptr = head;
            while (ptr != slow) {
                ptr = ptr->next;
                slow = slow->next;
            }
            return ptr;
        }
    }
    return NULL;
}
相关推荐
小白程序员成长日记8 分钟前
2025.11.21 力扣每日一题
算法·leetcode·职场和发展
星期天21 小时前
3.2联合体和枚举enum,还有动态内存malloc,free,calloc,realloc
c语言·开发语言·算法·联合体·动态内存·初学者入门·枚举enum
自信150413057592 小时前
初学者小白复盘23之——联合与枚举
c语言·1024程序员节
sin_hielo2 小时前
leetcode 1930
算法·leetcode
秃秃秃秃哇3 小时前
C语言实现循环链表demo
linux·c语言·链表
努力学算法的蒟蒻3 小时前
day17(11.18)——leetcode面试经典150
算法·leetcode·面试
不爱编程爱睡觉4 小时前
代码随想录算法训练营第二十八天 | 动态规划算法基础、 LeetCode509. 斐波那契数、70. 爬楼梯、746. 使用最小花费爬楼梯
算法·leetcode·动态规划·代码随想录
小曹要微笑7 小时前
STM32H7系列全面解析:嵌入式性能的巅峰之作
c语言·stm32·单片机·嵌入式硬件·算法
松涛和鸣9 小时前
14、C 语言进阶:函数指针、typedef、二级指针、const 指针
c语言·开发语言·算法·排序算法·学习方法
yagamiraito_11 小时前
757. 设置交集大小至少为2 (leetcode每日一题)
算法·leetcode·go