题海拾贝:力扣 141.环形链表

Hello大家好!很高兴我们又见面啦!给生活添点passion,开始今天的编程之路!

我的博客: <但凡.

我的专栏: 《编程之路》《数据结构与算法之美》《题海拾贝》

欢迎点赞,关注!

1、题目

2、题解(快慢指针)

我们可以定义两个指针,刚开始时都指向这个链表的头节点,然后让快指针每次走两个节点,慢指针每次走一个节点。如果有环状链表存在,那快慢指针一定会相遇。倘若没有,快指针一定会先走到头,快指针下一个节点是空或者他自己是空时,返回假。

cpp 复制代码
/**
 * 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;
    if(head==NULL||head->next==NULL) return false;

    while( fast!=NULL && slow!=NULL && fast->next!=NULL){
        fast=fast->next->next;
        slow=slow->next;
        if( fast==slow ) return true;
    }
    return false;

}

好了,今天的内容就分享到这,我们下期再!

相关推荐
jz_ddk22 分钟前
[算法] 算法PK:LMS与RLS的对比研究
人工智能·神经网络·算法·信号处理·lms·rls·自适应滤波
Miraitowa_cheems24 分钟前
LeetCode算法日记 - Day 106: 两个字符串的最小ASCII删除和
java·数据结构·算法·leetcode·深度优先
旭编24 分钟前
小红的好矩形
c++·算法
小白程序员成长日记25 分钟前
2025.11.12 力扣每日一题
算法·leetcode·职场和发展
Alex艾力的IT数字空间30 分钟前
设计既保持高性能又兼顾可移植性的跨平台数据结构
数据结构·分布式·算法·微服务·中间件·架构·动态规划
leoufung42 分钟前
贪心算法核心定理与应用——以 Gas Station 问题为例
算法·贪心算法
2501_941111461 小时前
C++与硬件交互编程
开发语言·c++·算法
未若君雅裁1 小时前
LeetCode 51 - N皇后问题 详解笔记
java·数据结构·笔记·算法·leetcode·剪枝
Tim_102 小时前
【算法专题训练】30、二叉树的应用
算法
夜晚中的人海2 小时前
【C++】哈希表算法习题
c++·算法·散列表