题海拾贝:力扣 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;

}

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

相关推荐
土司大王2 分钟前
LeetCode hot100——全排列
java·算法·leetcode
尾善爱看海6 分钟前
前端面试算法手撕全解(高频真题+标准答案)
算法·js
203号居民25 分钟前
LeetCode hot 100 — 138. 随机链表的复制
算法·leetcode·链表
凌晨16835 分钟前
OpenCV(十一)人脸识别三大算法LBPH、EigenFace、FisherFace
人工智能·opencv·算法
明月_清风37 分钟前
分治、贪心、回溯、动态规划:四种经典算法思想
后端·算法
Thomas21431 小时前
spark sort shuffer 和 hash shuffer 图解对比
算法·哈希算法
AbandonForce1 小时前
简谈线程池
开发语言·c++·算法
智购科技智能售货柜2 小时前
2026自动售货机商品掉落声学计数方案:从麦克风到频谱识别的工程实践~YH
人工智能·算法
土司大王2 小时前
LeetCode hot100——实现 Trie (前缀树)
java·算法·leetcode
水龙吟啸2 小时前
华为研发岗AI方向9.9机考题复盘&分析
人工智能·python·算法·华为