【力扣刷题练习】876. 链表的中间结点

题目描述:

给你单链表的头结点 head ,请你找出并返回链表的中间结点。

如果有两个中间结点,则返回第二个中间结点。

题目解答:

class Solution {
    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;
    }
}

题目思路:

快慢指针遍历链表,当快指针到达链表尾部时,慢指针就在链表中部。

你可能感兴趣的:(力扣刷题练习,leetcode,链表,算法)