【问题标题】:Is there a tree structure with multiple root nodes, if so, what is it called?是否存在具有多个根节点的树结构,如果有,它叫什么?
【发布时间】:2021-03-06 17:38:59
【问题描述】:

一棵经典树有一个根节点。示例:

是否有像图片中那样具有多个初始根的树?:

【问题讨论】:

  • 如果你将树木分开(根之间没有边),它将被称为 森林
  • 第二个例子令人困惑:这是否是有向图? “根”之间的边不是有向的,其他的边是?
  • 这样的结构存在,你画出来。正如@JoeSewell 所说,这种结构称为森林。有一个定理,任何森林在拓扑上都等价于二叉树。

标签: data-structures tree nodes


【解决方案1】:

正如@Joe Sewell 在 cmets 中指出的那样,独立树的集合称为 森林。该术语既适用于您上面展示的有向有根树的集合,也适用于无向无根树的集合。

许多数据结构和算法都使用了森林。二项式和斐波那契堆数据结构将它们的项目存储在一组较小的独立树中。在一些最大流算法中使用的链接/切割树也适用于独立的树集合。

【讨论】:

    猜你喜欢
    • 2010-09-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-23
    • 2013-10-09
    相关资源
    最近更新 更多