LeetCode(力扣):环形链表

提示:

  • 链表中节点的数目范围是 [0, 104]
  • -105 <= Node.val <= 105
  • pos-1 或者链表中的一个 有效索引

进阶: 你能用 O(1)(即,常量)内存解决此问题吗?

java 复制代码
/**
 * Definition for singly-linked list.
 * class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode(int x) {
 *         val = x;
 *         next = null;
 *     }
 * }
 */
public class Solution {
    public boolean hasCycle(ListNode head) {
        //定义快慢指针
        ListNode slow = head;
        ListNode fast = head;
        //只要当前节点不为null,并且下一个节点不为null就继续
        while(fast != null && fast.next != null){
            //慢指针一次一步,快指针一次两步
            slow = slow.next;
            fast = fast.next.next;
            //两个相遇,说明是环
            if(slow == fast){
                return true;
            }
        }
        //跑到尽头为null,不是环
        return false;
    }
}

快指针只能每次走2步,不能是3步,因为三步可能导致直接越过慢指针,会多绕几圈才能碰到。

相关推荐
大模型码小白12 小时前
AI 对话流性能调优:万级消息的虚拟滚动落地
java·大数据·前端·javascript·人工智能·算法·机器学习
sel_912 小时前
【多轮对话论文导读(三)】多轮对话与Agent论文阅读笔记:用户模拟、轨迹生成与长期记忆
论文阅读·人工智能·笔记·深度学习·算法·机器学习
Asize13 小时前
438. 找到字符串中所有字母异位词
算法
Asize13 小时前
283. 移动零
算法
船厂电气自动化ai大模型15 小时前
AI大模型与数学·第57课 傅里叶全套工具链综合实战:串联级数/连续变换/DFT/FFT,图像、音频、扩散模型完整例题
数据结构·人工智能·深度学习·算法·机器学习
人工智能培训16 小时前
人工智能数据安全下的个人信息保护实践方案
大数据·人工智能·算法·生活
Brilliantwxx16 小时前
【算法从零到千】【59-65】链表专题
数据结构·链表
元启数宇16 小时前
幕墙AI设计算法逻辑:元启数宇如何智能分格
人工智能·算法
宵时待雨16 小时前
优选算法专题16:多源BFS
算法·宽度优先
重生之后端学习16 小时前
53. 最大子数组和[中等]✅
java·数据结构·算法·leetcode·职场和发展