其他分享
首页 > 其他分享> > 876. 链表的中间结点

876. 链表的中间结点

作者:互联网

 

 

利用快慢指针来处理

时间O(n),空间O(1)

 1     public ListNode middleNode(ListNode head) {
 2         if(head==null || head.next==null) return head;
 3         ListNode slow=head,fast=head.next;
 4         while(fast!=null && fast.next!=null){
 5             slow=slow.next;
 6             fast=fast.next.next;
 7         }
 8         // 针对偶数个节点的特殊处理
 9         if(fast!=null){
10             slow=slow.next;
11         }
12         return slow;
13     }

 

标签:结点,slow,ListNode,876,head,fast,next,链表,null
来源: https://www.cnblogs.com/jchen104/p/14733801.html