【LeetCode热题100】【链表】环形链表

题目链接:141. 环形链表 - 力扣(LeetCode)

判断一个链表有没有环可以用快慢指针的方法,如果没有环,那么最终可以让两个指针中一个为空,如果有环,那么快指针终会与慢指针相遇

复制代码
class Solution {
public:
    bool hasCycle(ListNode *head) {
        if (head == nullptr || head->next == nullptr)
            return false;
        ListNode *fast = head->next;
        ListNode *slow = head;
        while (fast != slow) {
            if (fast == nullptr || fast->next == nullptr)
                return false;
            fast = fast->next->next;
            slow = slow->next;
        }
        return true;
    }
};
相关推荐
c#上位机6 分钟前
halcon图像膨胀—dilation1
图像处理·算法·c#·halcon
RickyWasYoung7 分钟前
【聚类算法】高维数据的聚类
算法·数据挖掘·聚类
古月居GYH13 分钟前
数据结构算法——排序算法解析
数据结构·算法·排序算法
Zzzzmo_20 分钟前
【Java】排序算法(思路及图解)
算法·排序算法
人得思变~谁会嫌自己帅呢?23 分钟前
希尔排序算法
数据结构·算法·排序算法
福尔摩斯张28 分钟前
C语言文件操作详解(一):文件的打开与关闭(详细)
java·linux·运维·服务器·c语言·数据结构·算法
white-persist28 分钟前
【攻防世界】reverse | answer_to_everything 详细题解 WP
c语言·开发语言·汇编·python·算法·网络安全·everything
Ynchen. ~37 分钟前
[工程实战] 攻克“数据孤岛”:基于隐语纵向联邦学习的金融风控建模全解析
算法·金融·逻辑回归·隐语
程序员-King.40 分钟前
day107—同向双指针—无重复字符的最长字串(LeetCode-3)
算法·leetcode·双指针
风掣长空40 分钟前
【LeetCode】面试经典150题:合并两个有序数组
算法·leetcode·面试