一、题目描述
实现一种算法,找出单向链表中倒数第 k 个节点。返回该节点的值。
注意: 本题相对原题稍作改动
示例:
输入: 1->2->3->4->5 和 k = 2
输出: 4
说明:
给定的 k 保证是有效的。
本题解题思路如下:
- 定义两个指针
pre和cur,初始都指向head - 让
cur指针向后走k步 pre和cur指针一起向后走,直到cur指针为空,此时pre指针指向的就是倒数第k个节点
二、代码实现
var kthToLast = function(head, k) {
let pre = head,cur = head
while(k){
cur = cur.next;
k--;
}
while(cur){
cur = cur.next;
pre = pre.next;
}
return pre.val;
};
欢迎建议留言讨论