LinkedList
class Node {
constructor(value){
this.value = value;
this.next = null;
}
}
class LinkedList {
constructor(){
this.head = null;
this.size = 0;
}
isEmpty(){
return this.size === 0;
}
getSize(){
return this.size
}
prePend(value){
const node = new Node(value);
if(this.isEmpty()){
this.head = node;
}else {
node.next = this.head;
this.head = node;
}
this.size++
}
print(){
console.log(this.head)
if(this.isEmpty()){
console.log('List is Empty');
}else {
let curr = this.head;
let listValue = '';
while(curr){
listValue += ${curr.value}->;
curr = curr.next;
console.log(curr);
}
console.log(listValue);
}
}
}
const List = new LinkedList();
List.prePend(10);
List.prePend(20);
List.prePend(30);
List.print();