python获取倒数第k个结点

思路:定义快慢两个指针,快指针走k步后慢指针开始走,当快指针走到链表尾时快慢指针距离相隔k,倒数第K个结点就是慢指针所指的结点

# -*- coding:utf-8 -*-
# class ListNode:
#     def __init__(self, x):
#         self.val = x
#         self.next = None

class Solution:
    def FindKthToTail(self, head, k):
        # write code here
        fast, slow = head, head
        for i in range(k):
            if not fast:
                return
            fast = fast.next
        while fast:
            fast = fast.next
            slow = slow.next
        return slow

 

posted on 2020-09-03 10:33  HHMLXL  阅读(206)  评论(0)    收藏  举报

导航