Given a linked list, remove the n-th node from the end of list and return its head.
Example:
Given linked list: 1->2->3->4->5, and n = 2. After removing the second node from the end, the linked list becomes 1->2->3->5.
Note:
Given n will always be valid.
Follow up:
Could you do this in one pass?
const rn = (head, n) => {
let rv = 0;
if (head) {
rv = rn(head.next, n);
}
if (rv<n) {
rv++;
return rv;
} else if(rv === n) {
return head
} else {
head.next = head.next.next;
return -Infinity;
}
}
var removeNthFromEnd = function(head, n) {
let result = rn(head, n);
return head;
};
Run the code here: https://repl.it/@VinitKhandelwal/19-Leetcode-Javascript-Remove-Nth-Node-From-End-of-List
Comments
Post a Comment