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