2022-5-12 链表

给定一个头结点为 head 的非空单链表,返回链表的中间结点。

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

 1 /**
 2  * Definition for singly-linked list.
 3  * public class ListNode {
 4  *     int val;
 5  *     ListNode next;
 6  *     ListNode() {}
 7  *     ListNode(int val) { this.val = val; }
 8  *     ListNode(int val, ListNode next) { this.val = val; this.next = next; }
 9  * }
10  */
11 class Solution {
12     public ListNode middleNode(ListNode head) {
13         ListNode fast=head,slow=head;
14         while (fast!=null&&fast.next!=null){
15             fast=fast.next.next;
16             slow=slow.next;
17         }
18         return slow;
19     }
20 }

思路:快慢指针。

posted on 2022-05-12 20:52  阿ming  阅读(15)  评论(0编辑  收藏  举报

导航