Ukkonen的后缀树算法,有什么必要?

是的,我读过这样的内容:简单英语中的Ukkonen后缀树算法?

这是对算法的一个很好的解释,但它并不是算法本身,而是杀死我,而是用来实现它的数据结构。

我需要的数据结构尽可能最小和尽可能快,我看到许多实现仅使用节点,一些只有边,一些有边和节点等。然后有变化,我读的一个网站声称,一个节点不需要指向其父节点的指针,而其他地方则不需要考虑如何管理节点的子节点。

我的想法是使用int start和int * end(指向当前结束或阶段i)的Node结构。 每个节点都有一个后缀链接指针,一个指向其父节点的指针,以及一个指向包含其子节点的向量的指针。

我的问题是,这些东西是否足以实现后缀树? 我能以任何方式最小化它吗? 我还没有看到向导中的孩子的实现,所以我对我自己的想法持怀疑态度。 有人能解释一下用这种方式只用节点来实现一个后缀树需要什么?


当我必须实施该算法时,更好的解释文档是最初的Ukkonen论文,并且有一个更新的图像。

是的,在这个文件中都是内部实现Ukkonen的后缀树算法。


以下可能会有所帮助:

乌克兰的后缀树建设

我们在这里
1.开始,结束代表边缘标签
2.后缀链接
3.为儿童设计一个阵列

链接地址: http://www.djcxy.com/p/6825.html

上一篇: Ukkonen's suffix tree algorithm, what is necessary?

下一篇: Ukkonen's Algorithm Generalized Suffix Trees