使用 Javascript 從連結串列中刪除元素
在連結串列中刪除元素非常簡單。我們只需要去除我們想要刪除的節點,即失去對它的引用。我們需要考慮三種情況:
- 從頭部刪除元素:在這種情況下,我們可以簡單地賦值 head = head.next。這樣,我們將失去第一個元素的引用。並且我們的頭部將開始指向第二個元素。
- 從尾部刪除元素:在這種情況下,我們可以簡單地將倒數第二個節點的 node.next 賦值為 null,這樣我們將從列表中刪除最後一個元素。
- 從中間刪除元素:這比較棘手。在這種情況下,我們將不得不讓要刪除的節點之前的節點直接指向要刪除的節點之後的節點。因此,prevNode.next = node.next 將為我們完成此操作。
現在讓我們來看一下對此的說明:

現在讓我們看看我們將如何實現它:
示例
remove(data, position = 0) {
if (this.length === 0) {
console.log("List is already empty");
return;
}
this.length--;
let currNode = this.head;
// Condition 1
if (position <= 0) {
this.head = this.head.next;
}
// Condition 2
else if (position >= this.length - 1) {
while (currNode.next.next != null) {
currNode = currNode.next;
}
currNode.next = null;
}
// Condition 3
else {
let iter = 0;
while (iter < position) {
currNode = currNode.next; iter++;
}
currNode.next = currNode.next.next;
}
}您可以使用以下方法進行測試:
示例
let list = new LinkedList(); list.insert(10); list.insert(20); list.insert(30); list.remove(1); list.display(); list.insert(15, 2); list.remove(); list.display();
輸出
這將給出以下輸出:
20 -> 30 -> 30 -> 15 ->
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP