用js刷剑指offer(链表中倒数第k个结点)

时间:2022-07-26 08:06:07

题目描述

输入一个链表,输出该链表中倒数第k个结点。

牛客网链接

思路

设置两个指针,p,q,先让p走k-1步,然后再一起走,直到p为最后一个 时,q即为倒数第k个节点

js代码

// 空间复杂度1 时间复杂度n*n
/*function ListNode(x){
this.val = x;
this.next = null;
}*/
function FindKthToTail(head, k)
{
// write code here
let p = head
let q = head
while (k){
if (!p) return null
else p = p.next
k -= 1
}
while(p){
p = p.next
q = q.next
}
return q
}