【发布时间】:2019-09-14 23:13:37
【问题描述】:
我在 let forwardNode = currentNode.next.next 上发生错误,错误是“TypeError: Cannot read property on 'next' of null. 但是当我 console.log currentNode.next 它不为空。
然后我将let forwardNode = currentNode.next.next 分解为:
let forwardNode = currentNode.next
let forward = forwardNode.next
currentNode = forward
但我得到了同样的错误。我被困住了!我不知道我在这里俯瞰什么。这是我的代码:
/**
* Definition for singly-linked list.
* function ListNode(val) {
* this.val = val;
* this.next = null;
* }
*/
/**
* @param {ListNode} head
* @param {number} n
* @return {ListNode}
*/
var removeNthFromEnd = function(head, n) {
let currentNode = head
let currentIndex = 0
while (currentNode.next != null ) {
currentNode = currentNode.next
currentIndex++
}
//length of LL is known by currentIndex
//reset currentnode
currentNode = head
for (let i = 0; i<currentIndex-n; i++){
currentNode = currentNode.next
}
let forwardNode = currentNode.next.next
currentNode.next = forwardNode
return head
};
【问题讨论】:
标签: javascript linked-list runtime-error