题目描述
实现一种算法,找出单向链表中倒数第 k 个节点。返回该节点的值。
注意:本题相对原题稍作改动
示例:
输入: 1->2->3->4->5 和 k = 2 输出: 4 说明:
给定的 k 保证是有效的。
来源:力扣(LeetCode) 链接:leetcode-cn.com/problems/kt… 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
题解思路
倒数第k个数的值就是整数第length-k个数的值。
题解代码
* Definition for singly-linked list.
* function ListNode(val) {
* this.val = val;
* this.next = null;
* }
*/
/**
* @param {ListNode} head
* @param {number} k
* @return {number}
*/
var kthToLast = function(head, k) {
let length = 0;
let cur = head;
//求链表长度
while(cur){
cur = cur.next;
length++;
}
cur = head;
//找出整数第length-k个数的值即为倒数第k个数的值
for(let i = 0; i < length - k; i++){
cur = cur.next;
}
return cur.val;
};