JavaScript 程式刪除鍊錶的備用節點

WBOY
發布: 2023-08-24 14:25:04
轉載
522 人瀏覽過

JavaScript 程序删除链表的备用节点

我們將寫一個 JavaScript 程式來刪除鍊錶的備用節點。我們將利用 while 迴圈來遍歷鍊錶,同時追蹤目前和前一個節點。在循環的每次迭代中,我們將跳過當前節點並將前一個節點直接連結到下一個節點,從而有效地從清單中刪除當前節點。這個過程將重複進行,直到所有替代節點都從鍊錶中刪除。

方法

  • 從頭到尾遍歷鍊錶。

  • 對於每個節點,儲存其下一個節點。

  • 刪除目前節點的下一個節點。

  • 將目前節點的下一個引用更新為下一個節點的下一個。

  • 移動到下一個節點,現在是下一個節點的下一個。

  • 重複此過程,直到到達鍊錶末端。

  • 最後,刪除所有備用節點後,回到鍊錶的頭。

範例

這是一個在 JavaScript 中刪除鍊錶替代節點的完整範例 -

// Linked List Node class Node { constructor(data) { this.data = data; this.next = null; } } // Linked List class class LinkedList { constructor() { this.head = null; } // Method to delete alternate nodes deleteAlternate() { let current = this.head; while (current !== null && current.next !== null) { current.next = current.next.next; current = current.next; } } // Method to print the linked list printList() { let current = this.head; while (current !== null) { console.log(current.data); current = current.next; } } } // create a linked list let list = new LinkedList(); list.head = new Node(1); list.head.next = new Node(2); list.head.next.next = new Node(3); list.head.next.next.next = new Node(4); list.head.next.next.next.next = new Node(5); console.log("Linked List before deleting alternate nodes: "); list.printList(); list.deleteAlternate(); console.log("Linked List after deleting alternate nodes: "); list.printList();
登入後複製

說明

  • 我們先建立一個Node類,代表鍊錶中的每個節點,其中包含一個data欄位和一個next指向清單中下一個節點的字段。

  • 然後,我們建立一個LinkedList類,其中包含鍊錶的頭節點和一個printList方法來列印鍊錶。

  • LinkedList類別的deleteAlternate方法用於刪除鍊錶中的替代節點。此方法迭代鍊錶並更新每個節點的next指標以指向鍊錶中的下一個節點,從而有效地刪除備用節點。

  • 最後,我們建立一個鍊錶並在刪除備用節點之前和之後列印它。

以上是JavaScript 程式刪除鍊錶的備用節點的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!