Javascript 中的节点

front end technologyweb developmentjavascript

树中的每个元素都是一个节点。在继续定义二叉树之前,我们需要定义一个节点,因为树由节点组成。我们将创建一个非常简单的节点定义,它具有 3 个属性,即:左、右和数据。

  • left − 这保存了对此节点左子节点的引用。

  • right − 这保存了对此节点右子节点的引用。

  • data − 这保存了对我们想要存储在此节点中的数据的引用。

让我们看看这种结构的代码表示。

示例

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

我们已经定义了 Node 数据结构,其构造函数采用 3 个属性,即 data left 和 right。我们主要会创建一个 left 和 right 属性为空的节点,因为我们会在叶子节点处插入值。

为了方便使用,我们将 Node 定义为 BinarySearchTree 类的一个属性,我们将创建该类,以便将此类保留在我们使用它的地方。

请注意,二叉树需要具有 2 个显式 left 和 right 属性的节点。对于像 B 树或 B+ 树这样的多路树,我们定义一个名为 children 的属性,它是一个数组(或其他类似数据结构的容器)。


相关文章