美文网首页
链表中倒数第K个结点

链表中倒数第K个结点

作者: momo1023 | 来源:发表于2019-03-27 15:43 被阅读0次
class Solution:
    def FindKthToTail(self, head, k):
        # write code here
        if not head or k <= 0:
            return None
        #设置两个指针,p2指针先走(k-1)步,然后再一起走,当p2为最后一个时,p1就为倒数第k个 数
        p2=head
        p1=head
        #p2先走,走k-1步,如果k大于链表长度则返回 空,否则的话继续走
        while k > 1:
            if p2.next:
                p2 = p2.next
                k -= 1
            else:
                return None
        #两个指针一起 走,一直到p2为最后一个,p1即为所求
        while p2.next:
            p1 = p1.next
            p2 = p2.next
        return p1

相关文章

网友评论

      本文标题:链表中倒数第K个结点

      本文链接:https://www.haomeiwen.com/subject/uxgzvqtx.html