二叉树和常规树之间有什么区别?

时间:2014-05-04 00:43:17

标签: c++

我知道的二叉树最多可以有两个孩子,而一个binarty树的结构看起来像:

Struct BinaryNode
{
    Object element;
    BinaryNode *left;
    BinaryNode *right;
}

treeNode的结构如何?

3 个答案:

答案 0 :(得分:3)

从概念上讲,树由节点组成,这些节点可以有子节点和几个约束,以确保数据结构是“树形的”:

  • 每个节点都有一个父节点...除了没有父节点的根节点。
  • 没有周期。

二叉树只是一棵树,每个节点最多只能有 2个孩子。


一般树节点的类似struct声明将是这样的:

struct Node
{
    Object element;
    Node **children;
}

其中children指的是一个节点数组......虽然它可能应该是某种Node指针的托管集合。如果您使用集合,它在概念上是“集合”,但您不太可能依赖树实现中的“类似集”属性。更重要的是,收集订单/订单保留。

答案 1 :(得分:3)

二叉树正如名字所说:二进制!每个节点有两个(bi ..)子节点。在图形中,通常有称为QuadTrees或OctTrees的树。每个节点都有4或8个孩子。因此,通用树是一种数据结构,其中每个节点都有"某些数量的"儿童。在二叉树中,该数字始终为2.

答案 2 :(得分:-1)

二叉树只是一种常规树。这是受限制的 最多只有两个孩子,并不是所有树木的约束。