LeetCode876

辣雞題目,最後發現並沒有頭結點,注意快慢雙指針法(還可用於判環)

def middleNode(self, head):
        """
        :type head: ListNode
        :rtype: ListNode
        """
        L = 0
        p = head
        while(p):
            L += 1
            p = p.next
        
        p = head
        for i in range(L//2):
            p = p.next
        return p

# version2:
# def middleNode(self, head):
#     slow = fast = head  # 初始化兩個指針
#     while fast and fast.next:
#         slow = slow.next  # 走一步
#         fast = fast.next.next  # 走兩步
#     return slow

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章