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

자바스크립트의 노드


트리의 각 요소는 노드입니다. 트리가 노드로 구성되어 있으므로 이진 트리를 정의하기 전에 노드를 정의해야 합니다. 3가지 속성, 즉 왼쪽, 오른쪽 및 데이터가 있는 매우 간단한 노드 정의를 만들 것입니다.

  • 왼쪽 − 이것은 이 노드의 왼쪽 자식에 대한 참조를 보유합니다.

  • 맞습니다 − 이것은 이 노드의 오른쪽 자식에 대한 참조를 보유합니다.

  • 데이터 − 이 노드에 저장하려는 데이터에 대한 참조를 보유합니다.

이러한 구조의 코드 표현을 살펴보겠습니다.

예시

class Node {
   constructor(data, left = null, right = null) {
      this.data = data;
      this.left = left;
      this.right = right;
   }
}

우리는 3가지 속성(왼쪽 및 오른쪽 데이터)을 취하는 생성자로 Node 데이터 구조를 정의했습니다. 잎에 값을 삽입할 것이기 때문에 우리는 대부분 null 왼쪽 및 오른쪽 속성을 가진 노드를 생성할 것입니다.

사용의 편의를 위해 Node를 BinarySearchTree 클래스의 속성으로 정의하여 이 클래스를 사용 위치에 유지하기 위해 만들 것입니다.

이진 트리에는 2개의 명시적 왼쪽 및 오른쪽 속성이 있는 이러한 노드가 필요합니다. B 트리 또는 B+ 트리와 같은 다중 트리의 경우 배열(또는 데이터 구조와 같은 다른 컨테이너)인 children이라는 속성을 정의합니다.