当前位置: 首页 > news >正文

LeetCode 环形链表II:为什么双指针第二次会在环的入口相遇?

快慢指针

为什么相遇后让快指针回到起点,再让快指针和慢指针都一步一步地走,它们就会在环的入口相遇?

复杂度

  • 时间复杂度:  O(n)
  • 空间复杂度: O(1)

     public ListNode detectCycle(ListNode head) {
            ListNode slow = head, fast =head;
            ListNode result = null;
            while (fast != null && fast.next != null) {
                slow = slow.next;
                fast = fast.next.next;
                if (fast == slow) {
                    break;
                }
            }
            fast = head;
            while (slow != null && slow.next != null) {
                if (fast == slow){
                    result = fast;
                    break;
                }
                slow = slow.next;
                fast = fast.next;
            }
            return result;
        }

    相关文章:

  • 串的KMP算法详解
  • LeetCode[203]移除链表元素
  • 【GPT入门】第21课 langchain核心组件
  • 基于SSM + JSP 的水果蔬菜商城
  • 【C++】每日一练(轮转数组)
  • SSL/TLS 1.2过程:Client端如何验证服务端证书?
  • CentOS 8 停止维护后通过 rpm 包手动安装 docker
  • MIDI,AI 3D场景生成技术
  • Java中的访问修饰符有哪些
  • word处理控件Aspose.Words教程:使用 Python 删除 Word 中的空白页
  • 机器学习与深度学习中模型训练时常用的四种正则化技术L1,L2,L21,ElasticNet
  • C++语言的动态规划
  • C++基础 [三] - 面向对象三
  • MySQL自动化配置工具开发
  • 电子电气架构 --- 分布到集中的动カ系统及基于域控制器的架构
  • node-ddk,electron 开发组件
  • CSS元素层叠顺序规则
  • 读 Gemma 3 二分
  • 异步加载错误如何解决
  • AI驱动的视频字幕提取与翻译工具
  • 泽连斯基:俄代表团级别低,没人能做决定
  • 上海静安将发放七轮文旅消费券,住宿券最高满800元减250元
  • 一个多月来上海交大接连“牵手”三区,在这些方面进行区校合作
  • 《歌手2025》公布首发阵容,第一期就要淘汰一人
  • “大鼻子情圣”德帕迪约因性侵被判缓刑,还有新的官司等着他
  • 美国明尼苏达州发生山火,过火面积超80平方公里