Insert node at beginning of doubly linked list in typescript
Ts program for Insert node at beginning of doubly linked list. Here problem description and explanation.
// TypeScript Program For
// insert new node at beginning of doubly linked list
// Define class of linked list Node
class LinkNode
{
public data: number;
public next: LinkNode;
public prev: LinkNode;
constructor(data: number)
{
this.data = data;
this.next = null;
this.prev = null;
}
}
class DoublyLinkedList
{
public head: LinkNode;
constructor()
{
// Set inital value
this.head = null;
}
// Insert new node at beginning position
public insert(value: number)
{
// Create a node
var node = new LinkNode(value);
node.next = this.head;
// When linked list is not empty
if (this.head != null)
{
this.head.prev = node;
}
// Make new head
this.head = node;
}
// Display node element of doubly linked list
public display()
{
if (this.head == null)
{
console.log("Empty Linked List");
}
else
{
console.log(" Doubly Linked List Element :");
// Get first node of linked list
var temp = this.head;
// iterate linked list
while (temp != null)
{
// Display node value
console.log(" " + temp.data);
// Visit to next node
temp = temp.next;
}
}
}
public static main(args: string[])
{
var dll = new DoublyLinkedList();
// Insert following linked list nodes
dll.insert(70);
dll.insert(60);
dll.insert(50);
dll.insert(40);
dll.insert(30);
dll.insert(20);
dll.insert(10);
// NULL <- 10 <--> 20 <--> 30 <--> 40 <--> 50 <--> 60 <--> 70->NULL
dll.display();
}
}
DoublyLinkedList.main([]);
/*
file : code.ts
tsc --target es6 code.ts
node code.js
*/
Output
Doubly Linked List Element :
10
20
30
40
50
60
70
Please share your knowledge to improve code and content standard. Also submit your doubts, and test case. We improve by your feedback. We will try to resolve your query as soon as possible.
New Comment