Skip to main content

链表取中间节点

const head = {
'val':1,
'next':{
'val':2,
'next':{
'val':3,
'next':{
'val':4,
'next':{
'val':5,
'next':undefined
}
}
}
}
}
class Node{
constructor(element,next = null){
this.element = element
this.next = next
}
}

const getElementAt = function (position,node) {
let dummyNode = new Node(-1,node)
let size = 0
while(dummyNode.next){
size ++
dummyNode = dummyNode.next
}


if(position >= 0 && position <= size) {
for (let i = 0; i < position; i++) {
node = node.next;
}
return node;
}
return undefined
};

console.log(getElementAt(1,head))