哪种类型的树数据结构适用于高效的频繁模式挖掘?

时间:2013-12-16 06:25:31

标签: data-structures information-retrieval trie

我目前正致力于频繁模式挖掘(FPM)。我在谷歌上搜索可用于FPM的数据结构。我主要担心的是数据结构的空间紧凑性,因为我计划在其上使用分布式算法(处理适合我主存储器的DS上的同步)。我遇到的数据结构列表是

  • 前缀树
  • 紧凑型前缀树或基数树
  • 前缀哈希树(PHT)
  • Burst Tree(目前正在阅读其工作原理)

我不知道每个数据结构发展的顺序。谁能告诉我哪个DS(不限于上面提到的DS)是符合我要求的最佳数据结构?

P.S:目前我正在考虑突发树是FPM中最着名的节省空间的数据结构。

1 个答案:

答案 0 :(得分:0)

我同意这个问题很广泛。但是,如果您正在寻找节省空间的前缀树,那么我强烈推荐Burst Trie。我写了一个实现,并且能够为Stripe的最新Capture the Flag挤出很多空间效率。 (他们遇到的问题是,每个节点使用4个节点,每个节点少于500mb,需要"后缀树。)

如果你正在寻找一个有效的爆发特里的实现,那么请检查我的。

https://github.com/nbauernfeind/scala-burst-trie