【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;
    }
};
相关推荐
宵时待雨1 天前
优选算法专题3:二分查找
数据结构·c++·算法·leetcode·职场和发展
代码飞一会儿1 天前
算法与数据结构之树——让数据查找更加迅速
算法
工业甲酰苯胺1 天前
2026 产业 AI 爆发:JNPF 助企业少走 3 年弯路
人工智能·算法·低代码
贾斯汀玛尔斯1 天前
每天学一个算法--最短路径问题与三类基本算法
算法
我头发多我先学1 天前
C++ AVL 树:平衡原理到完整实现(自平衡二叉搜索树)
开发语言·数据结构·c++·算法
啊我不会诶1 天前
2025浙江省赛补题
c++·算法
@小柯555m1 天前
算法(字母异位词分组)
java·开发语言·算法·leetcode
故事和你911 天前
洛谷-算法2-1-前缀和、差分与离散化2
开发语言·数据结构·算法·深度优先·动态规划·图论
贾斯汀玛尔斯1 天前
每天学一个算法--DFS / BFS
算法·深度优先·宽度优先
cpp_25011 天前
P1877 [HAOI2012] 音量调节
数据结构·c++·算法·动态规划·题解·洛谷·背包dp