Doubly linked lists
There are some different types of linked lists. In this section, we are going to cover the doubly linked list. The difference between a doubly linked list and a normal linked list is that in the linked list we make the link from one node to the next one only. In the doubly linked list, we have a double link: one for the next element and one for the previous element, as shown in the following diagram:
Let's get started with the changes that are needed to implement the DoublyLinkedList
class:
function DoublyLinkedList() { var Node = function(element){ this.element = element; this.next = null; this.prev = null; //NEW }; var length = 0; var head = null; var tail = null; //NEW //methods here }
As we can see in this code, the differences between the LinkedList
class and the DoublyLinkedList
class are marked by NEW
. Inside the Node
class we have the prev
attribute (a new pointer) and inside the DoublyLinkedList
class we also...