Doubly Linked List is constructed of the following items

  • Class Named DoublyLinkedList
  • A constructor to create the DLL
  • Data items/variables:
    • head: to store the starting node
    • tail: to store the ending node

Example:

Javascript




// Doubly Linked List
class DoublyLinkedList {
 
    // Constructor to create a new linked list
    constructor() {
     
        // To contain the first item of the list
        this.head = null;
     
        // To contain the last item of the list
        this.tail = null;
    }
}


Basic Operations in Doubly Linked Lists:

Method to Check if the List is Empty:

  • Check if the head is null or not and return result

Javascript




// To check if the list is empty
isEmpty() {
    if (this.head == null) return true;
    return false;
}


Method to Insert Element:

  • Create a new node with value as argument
  • Check if the head is null insert at head
  • Else insert the new node at the tail and shift tail pointer

Javascript




// Method to add item at the last of doubly linked list
addItem(val) {
         
    // Create a temporary variable
    let temp = new Node(val);
 
    // If the list is empty link assign
    // new node to both head and tail
    if (this.head == null) {
        this.head = temp;
        this.tail = temp;
    }
 
    // else add item to the tail and shift tail
    else {
        temp.prev = this.tail;
        this.tail.next = temp;
        this.tail = this.tail.next;
    }
}


To traverse and display the list:

  • Check is the list is not null
  • Use a current poiter to treaverse the list and display value using console.log()

Javascript




// To traverse and display the list
display() {
 
    // Check if the List is empty
    if (!this.isEmpty()) {
 
        // traverse the list using new current pointer
        let curr = this.head;
        while (curr !== null) {
 
            // Display element
            console.log(curr.data);
 
            // Shift the current pointer
            curr = curr.next;
        }
    }
}


Implementation of Doubly Linked List in JavaScript

This article will demonstrate the Implementation of Doubly Linked List In JavaScript.

A doubly linked list (DLL) is a special type of linked list in which each node contains a pointer to the previous node as well as the next node of the linked list.

Similar Reads

Doubly Linked List in JavaScript

To create we have to create the following classes:...

Doubly LinkedList Node is constructed of the following items

A class named node A class constructor, and Data items/variables data: to contain respective node value next: to link the next node with the default value as null. prev: to link the previous node with the default value as null....

Doubly Linked List is constructed of the following items

...

Implementation of Doubly Linked List

Class Named DoublyLinkedList A constructor to create the DLL Data items/variables: head: to store the starting node tail: to store the ending node...