思路:
先算出链表的长度,减去k就是head需要前进的步数,然后把后面的链表返回即可。
代码(python)实现
# Definition for singly-linked list.
class ListNode:
def __init__(self, x):
self.val = x
self.next = None
class Solution:
def getKthFromEnd(self, head: ListNode, k: int) -> ListNode:
length = 0
tempNode = head
while tempNode != None:
length +=1
tempNode = tempNode.next
cnt = length-k
while cnt >0:
head = head.next
cnt -=1
return head
提交结果:
执行结果:通过
执行用时:32 ms, 在所有 Python3 提交中击败了79.59%的用户
内存消耗:14.8 MB, 在所有 Python3 提交中击败了83.78%的用户