找到链表的中间结点

简介: 找到链表的中间结点

运用快慢指针


class Solution {
    public ListNode middleNode(ListNode head) {
            ListNode fast=head;
            ListNode slow=head;
            while(fast!=null&&fast.next!=null){
                fast=fast.next.next;
                slow=slow.next;
            }
            return slow;
    }
}


fast!=null是偶数个结点的判断条件,fast.next!=null,是奇数结点的判断条件

相关文章
|
26天前
链表的中间结点
链表的中间结点
172 57
|
4月前
|
算法
数据结构和算法学习记录——线性表之双向链表(上)-结点类型定义、初始化函数、创建新结点函数、尾插函数、打印函数、尾删函数
数据结构和算法学习记录——线性表之双向链表(上)-结点类型定义、初始化函数、创建新结点函数、尾插函数、打印函数、尾删函数
38 0
|
2月前
|
算法
LeetCode第19题删除链表的倒数第 N 个结点
该文章介绍了 LeetCode 第 19 题删除链表的倒数第 N 个结点的解法,通过使用快慢双指针,先将快指针移动 n 步,然后快慢指针一起遍历,直到快指针到达链尾,从而找到倒数第 N 个结点的前一个结点进行删除,同时总结了快慢指针可减少链表遍历次数的特点。
LeetCode第19题删除链表的倒数第 N 个结点
|
3月前
【数据结构OJ题】链表中倒数第k个结点
牛客题目——链表中倒数第k个结点
29 1
【数据结构OJ题】链表中倒数第k个结点
|
2月前
【刷题记录】链表的中间结点
【刷题记录】链表的中间结点
|
3月前
【数据结构OJ题】链表的中间结点
力扣题目——链表的中间结点
21 0
【数据结构OJ题】链表的中间结点
|
4月前
|
算法
19.删除链表的倒数第N个结点
19.删除链表的倒数第N个结点
|
3月前
|
机器学习/深度学习 存储
sdut pta 链表3(优化)-----7-3 sdut-C语言实验-链表的结点插入
sdut pta 链表3(优化)-----7-3 sdut-C语言实验-链表的结点插入
18 0
|
4月前
|
算法 C语言
【数据结构与算法 刷题系列】求链表的中间结点
【数据结构与算法 刷题系列】求链表的中间结点
|
5月前
19. 删除链表的倒数第 N 个结点
19. 删除链表的倒数第 N 个结点
33 1