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

Javascript를 사용하여 연결 목록에 요소 추가


연결 리스트에서 주어진 위치에 데이터를 삽입하는 insert(data, position) 함수를 생성해야 합니다. 다음 단계를 수행합니다 -

  • 새 노드 생성
  • 목록이 비어 있는지 확인합니다. 그런 다음 헤드에 노드를 추가하고 반환합니다.
  • 그렇지 않은 경우 currElem을 사용하여 삽입하려는 위치로 반복합니다. currElem을 currElem.next와 동일하게 만들어 연결 목록을 반복합니다.
  • 그런 다음 노드가 목록의 다음 노드를 가리키도록 합니다. 이는 나머지 목록을 추적하기 위한 것입니다.
  • 마지막으로 currElem에서 나머지 목록으로의 링크를 끊고 생성된 노드를 가리키도록 합니다. 이제 노드는 지정된 위치의 목록에 있습니다.

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

Javascript를 사용하여 연결 목록에 요소 추가

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

예시

insert(data, position = this.length) {
   let node = new this.Node(data);
   if (this.head === null) {
      this.head = node;
      this.length++;
      return this.head;
   }
   let iter = 1;
   let currNode = this.head;
   while (currNode.next != null && iter < position) {
      currNode = currNode.next; iter++;
   }
   node.next = currNode.next;
   currNode.next = node;
   this.length++;
   return node;
}

마지막 요소로 위치를 지정했습니다. 위치를 지정하지 않으면 기본적으로 끝에 삽입되기 때문입니다.

를 사용하여 이것을 테스트할 수 있습니다.

예시

let list = new LinkedList();
list.insert(10);
list.insert(20);
list.insert(30);
list.insert(15, 2);
list.display();

출력

이것은 출력을 줄 것입니다 -

10 ->
30 ->
15 ->
20 ->

보다시피 모든 요소가 우리가 의도한 순서대로 있습니다. 2 이후 위치에 15를 삽입해 보았습니다.