剑指offer:链表中倒数第k个节点
题目描述
输入一个链表,输出该链表中倒数第k个结点。
class ListNode: def __init__(self, x): self.val = x self.next = Noneclass Solution: def FindKthToTail(self, head, k): # 由于k是从1开始的,因此需要特殊处理空链表和k<1的情况 if not head or k < 1: return None fast = head # 快指针先走k-1步 for _ in range(k - 1): # 注意需要判断整个链表是否含有k个节点 if fast.next: fast = fast.next else: return None # 当快指针走到尾节点的时候,慢指针就走到了倒数第k个节点 while fast.next: fast = fast.next head = head.next return head
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。