使用 Javascript 创建双向链表

front end technologyweb developmentjavascript

首先,我们定义一个简单的类,该类带有一个将头部和尾部初始化为 null 的构造函数。我们还将在 DoublyLinkedList 类的原型上定义另一个结构,该结构将代表链表中的每个节点。 

示例

class LinkedList {
   constructor() {
      this.head = null;
      this.tail = null;
      this.length = 0;
   }
}
LinkedList.prototype.Node = class {
   constructor(data) {
      this.data = data;
      this.next = null;
      this.prev = null;
   }
};

我们还创建一个显示函数,它将帮助我们查看列表的样子。此函数的工作原理如下。

  • 它从头部开始。
  • 它使用 currElem = currElem.next 遍历列表,直到 currElem 不变为空,即我们尚未到达末尾。
  • 它打印每次迭代的数据。

以下是相同 − 的插图

现在让我们看看如何实现这一点 − 

示例

display() {
   let currNode = this.head;
   while (currNode != null) {
      console.log(currNode.data + " -> ");
      currNode = currNode.next;
   }
}

相关文章