JSFiddle - React, Tailwind, and code Playground
by danbeam
JavaScript
function nodeFromEnd(head, howFar) {
var tmp = head;
var i = 0;
var node = null;
while (tmp) {
if (i <= howFar) {
if (i == howFar)
node = head;
++i;
} else {
node = node.next;
}
tmp = tmp.next;
}
return node;
}
var a;
a = {data: 1};
a.next = {data: 2};
a.next.next = {data: 3};
a.next.next.next = {data: 4};
a.next.next.next.next = {data: 5};
a.next.next.next.next.next = {data: 6};
console.log(nodeFromEnd(a, 2).data);
console.log(nodeFromEnd(a, 0).data);
console.log(nodeFromEnd(a, 5).data);
console.log(nodeFromEnd(a, 7));