gpt4 book ai didi

c++ - Ukkonen 的后缀树算法,需要什么?

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:52:28 28 4
gpt4 key购买 nike

是的,我读过这个:Ukkonen's suffix tree algorithm in plain English?

这是对算法的一个很好的解释,但让我失望的不是算法本身,而是用于实现它的数据结构。

我需要数据结构尽可能小和尽可能快,我已经看到许多只使用节点的实现,有些只有边,有些有边和节点,等等。然后有变化,我正在阅读一个网站声称一个节点不需要有指向其父节点的指针,其他地方也没有说明节点的子节点是如何管理的。

我的想法是拥有一个带有 int start 和 int * end(指向当前结束或阶段 i)的节点结构。每个节点都有一个 suffix_link 指针、一个指向其父节点的指针和一个指向包含其子节点的 vector 的指针。

我的问题是,这些东西是否足以实现后缀树?我可以以任何方式最小化它吗?我还没有看到在 vector 中使用子项的实现,所以我对自己的想法持怀疑态度。有人可以解释仅使用节点以这种方式实现后缀树需要什么吗?

最佳答案

以下内容可能会有帮助:

Ukkonen’s Suffix Tree Construction

这里有
1. start,end代表边标签
2.后缀链接
3. child 数组

关于c++ - Ukkonen 的后缀树算法,需要什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26065381/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com