leetcode876
方法1:构建fast和slow两个链表指针,slow一次走一步,fast一次走两步,代码:
def middleNode(self, head):
slow = fast = head
while fast and fast.next:
slow = slow.next
fast = fast.next.next
return slow
方法2:找到中间位置索引,然后输出后半部分的链表,代码:
class Solution:
def middleNode(self, head):
p = head
len=0
while p:
len+=1
p=p.next
mid = int(len/2)
p = head
i=0
while(i<mid):
p=p.next
i+=1
return p