这种数据结构的正确名称是什么?

时间:2012-11-21 22:15:45

标签: data-structures trie

我有可以拥有子组的组。子组可以有自己的子组,依此类推。这种树状结构的深度没有限制。

我一直在阅读有关Tries的内容,http://en.wikipedia.org/wiki/Trie。在我看来,我设想的数据结构类似于Trie,但有一些差异。

首先,在我的例子中,值与每个节点相关联。 (例如,值可以是组名称和组描述)。虽然Trie结构允许这样做,但我想知道是否有一个更具体的名称,该变量具有与每个节点相关的值?

其次,我有多个根源。另一种看待这种情况的方法是我有一系列相关的尝试。是否有一个数据结构的名称是Tries的集合?

我试图在PHP中实现它。如果你有任何令人印象深刻的提示。

编辑:我希望能够添加','编辑','删除'和'检索'节点。 (无需移动'。)检索将经常发生,但不会发生其他操作。我并不太担心性能,因为这不是整个应用程序中最常用的部分。

谢谢!

1 个答案:

答案 0 :(得分:2)

你所描述的并不是真正的特里。 trie更像是一个状态机,它将键与值相关联,同时将键的一部分导航为节点。

您描述了一个通用的根树。一个简单的特里也是一棵树。有trie-like structures that aren't trees。大多数看起来像树的东西都是树木。

树木的集合称为forest