Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

Javascript를 사용하여 이중 연결 목록 만들기


머리와 꼬리를 null로 초기화하는 생성자로 간단한 클래스를 정의하는 것으로 시작하겠습니다. 또한 연결 목록의 각 노드를 나타내는 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이 null이 되지 않을 때까지, 즉 끝에 도달하지 않을 때까지 currElem =currElem.next를 사용하여 목록을 반복합니다.
  • 각 반복에 대한 데이터를 인쇄합니다.

다음은 동일한 그림입니다 -

Javascript를 사용하여 이중 연결 목록 만들기

이제 이를 구현하는 방법을 살펴보겠습니다.

예시

display() {
   let currNode = this.head;
   while (currNode != null) {
      console.log(currNode.data + " -> ");
      currNode = currNode.next;
   }
}