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;
    }
相关推荐
cpp_25011 分钟前
P11375 [GESP202412 六级] 树上游走
数据结构·c++·算法·题解·洛谷·树形结构·gesp六级
天才程序YUAN1 分钟前
Windows 11 C 盘扩容完整教程:恢复分区拦路、页面文件锁盘、WinRE 重建全记录
c语言·开发语言·windows
川冰ICE1 分钟前
JavaScript进阶③|Map_Set_WeakMap_WeakSet,新型数据结构
开发语言·javascript·数据结构
我是一颗柠檬3 分钟前
C语言最全面复习:从入门到精通(2026年)
c语言·开发语言
小雨下雨的雨4 分钟前
鸿蒙PC用Electron框架 实现 房产交易系统核心算法深度解析
前端·javascript·算法·华为·electron·鸿蒙系统
RainCityLucky4 分钟前
Java Swing 自定义组件库分享(十一)
java·笔记·后端
ch.ju4 分钟前
Java Programming Chapter 4——The set method assigns a value to the property.
java·开发语言
CQU_JIAKE4 分钟前
6.3[a]
算法
此生决int5 分钟前
算法从入门到精通——字符串
数据结构·c++·算法·蓝桥杯
Sam_Deep_Thinking5 分钟前
SaaS多租户业务差异化:扩展点机制的设计与实现
java·架构