Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

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と呼ばれるプロパティを定義します。


  1. JavaScript WeakSet

    JavaScript WeakSetは、オブジェクトのコレクションを格納するために使用されます。セットのように、重複は保存されません。 WeakSetのメソッド- メソッド 説明 add(obj) weakSetに新しい値を追加します。 delete(obj) weakSetから値を削除します。 has(obj) weakSetオブジェクトに値が含まれているかどうかに応じて、trueまたはfalseを返します。 length() weakSetオブジェクトの長さを返します 以下はJavaScriptのWeakSetのコードです- 例

  2. JavaScriptの子ノード数?

    children.lengthを使用して、子ノードの数を取得します。 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initialscale=1.0"> <title>Document</title> <link rel="style