เริ่มต้นด้วยการกำหนดคลาสอย่างง่ายด้วยตัวสร้างที่เริ่มต้นส่วนหัวและส่วนท้ายให้เป็นค่าว่าง เราจะกำหนดโครงสร้างอื่นบนต้นแบบของคลาส 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;
}
}