使用后缀树进行字符串搜索

时间:2015-01-17 06:01:31

标签: string algorithm search

后缀树可用于有效地搜索一组单词中的单词。如果出现以下情况,后缀树仍然是最佳方法: 1.这组词是由无限的字符组成的 2.这组词是按字母顺序排列的(或以某种有意义的方式排序)?

1 个答案:

答案 0 :(得分:0)

如果您只想在一组单词中搜索单词(并且您不需要搜索其子字符串),则后缀树是一种过度杀伤。特里是一个更好的选择(时间复杂度是相同的,但它更简单)。如果单词是有序的,你可以使用二进制搜索来找到单词(是的,它确实有一个额外的log n因子,但它并没有那么糟糕)。即使它们没有订购,您也可以在搜索其他单词之前对它们进行排序。这种方法很好,因为它不需要任何自定义数据结构,并且它通常具有较小的常量和较小的内存使用(空间复杂度相同,但常量更好)。