返回倒数第 k 个节点
实现一种算法,找出单向链表中倒数第 k 个节点。返回该节点的值。
示例:
js
输入: 1->2->3->4->5 和 k = 2
输出: 4
解题思路
快慢指针。 快指针先走 k 步,当快指针指向空时,慢指针正好在倒数第 k 个节点。
参考答案
ts
function kthToLast(head: ListNode | null, k: number): number {
let left = head;
let right = head;
while (k-- > 0) {
right = right.next;
}
while (right) {
left = left.next;
right = right.next;
}
return left.val;
}