输入一个链表,输出该链表中倒数第k个结点。
# -*- coding:utf-8 -*-
# class ListNode:
# def __init__(self, x):
# self.val = x
# self.next = None
'''
方法1:把结点全部入栈,然后出栈k个
方法2:设置两个指针指向头结点,p先移动k-1,然后p、q一起移动知道p指向最后一个元素
'''
class Solution:
def FindKthToTail(self, head, k):
# write code here
if(head == None or k <= 0):
return None
p = head
q = head
while k>1:
if p.next != None:
p = p.next
k -= 1
else:
return None
while p.next!=None:
p = p.next
q = q.next
return q