使用 JavaScript 向链表添加元素
我们需要创建一个 insert(data, position) 函数,将数据插入到链表的给定位置。我们将执行以下步骤 −
- 创建一个新节点
- 检查列表是否为空。如果为空,则将节点添加到头部并返回。
- 如果不是,那么我们将迭代到我们想要使用 currElem 插入到的位置。我们通过使 currElem 等于 currElem.next 迭代链表。
- 然后我们将使节点指向列表中的下一个节点。这是为了跟踪列表的其余部分。
- 最后,我们中断了从 currElem 到列表其余部分的链接,并使其指向我们创建的节点。现在节点在给定位置的列表中。
以下对其进行了说明 −

现在让我们看看如何实现这个 −
示例
insert(data, position = this.length) {
let node = new this.Node(data);
if (this.head === null) {
this.head = node;
this.length++;
return this.head;
}
let iter = 1;
let currNode = this.head;
while (currNode.next != null && iter < position) {
currNode = currNode.next; iter++;
}
node.next = currNode.next;
currNode.next = node;
this.length++;
return node;
}请注意,我们已经给出了最后一个元素的位置。这是因为如果您没有提供位置,它将默认插入到末尾。
您可以使用 − 进行测试
示例
let list = new LinkedList(); list.insert(10); list.insert(20); list.insert(30); list.insert(15, 2); list.display();
输出
这将产生以下输出 −
10 -> 30 -> 15 -> 20 ->
正如我们所看到的,所有元素都按照我们的预期排序。我们尝试在 2 之后的插入 15。
广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
JavaScript
PHP