LeetCode 876

题目LeetCode 876

解法一:快慢指针

注意while循环条件,以链表(1,2,3,4,null)为例:

  • 当条件为fast != null && fast.next != null时,若链表元素为偶数个,则返回中间的后一个节点(3)
  • 当条件为fast.next != null && fast.next.next != null时,若链表元素为偶数个,则返回中间的前一个节点(2)

若链表元素为奇数个,则都返回中间节点

java 复制代码
    public ListNode middleNode(ListNode head) {
        ListNode slow = head, fast = head;
        while (fast != null && fast.next != null) {
            slow = slow.next;
            fast = fast.next.next;
        }
        return slow;
    }
相关推荐
从此以后自律7 小时前
迪杰斯特拉
算法
EntyIU7 小时前
Java NIO 实战
java·开发语言·nio
二宝哥7 小时前
springboot项目使用Gradle工具实现依赖版本控制
java·spring boot·后端·gradle·版本
QiLinkOS7 小时前
第三视觉理解徐玉生与他的商业活动(32)
大数据·c++·人工智能·算法·开源协议
KaMeidebaby7 小时前
卡梅德生物技术快报|实操手册:CXCL4 蛋白原核表达全套工艺,两步层析去除蛋白多聚体附完整电泳数据
人工智能·算法·机器学习·架构·spark
浩瀚之水_csdn7 小时前
Python 3 网络编程详解:从原理到实战
开发语言·网络·python
济*沧*海7 小时前
Set集合深度解析:原理、特性与应用场景全攻略
java
geovindu7 小时前
java: Singleton Pattern
java·开发语言·后端·单例模式·设计模式·创建型模式
AIGCmagic社区7 小时前
Unlimited OCR 论文精读:R-SWA 如何实现一次性长文档解析
人工智能·算法·aigc
AI行业学习7 小时前
2026 版 Notepad++ 完整图文安装指南|官方渠道无捆绑,一键切换中文界面
开发语言·人工智能·python·html·notepad++