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