首页
学习
活动
专区
工具
TVP
发布

Trie实现
EN

Stack Overflow用户
提问于 2009-06-24 05:17:50
回答 11查看 41.5K关注 0票数 67

在C/C++中有没有速度和缓存效率高的trie实现?我知道trie是什么,但我不想重新发明轮子,自己实现它。

EN

回答 11

Stack Overflow用户

回答已采纳

发布于 2009-06-24 09:35:33

如果你正在寻找一个ANSI实现,你可以从FreeBSD那里“偷走”它。您要查找的文件名为radix.c。它用于管理内核中的路由数据。

票数 38
EN

Stack Overflow用户

发布于 2009-08-14 23:38:18

我知道这个问题是关于现成的实现,但作为参考...

在你攻击朱迪之前,你应该先读一读"A Performance Comparison of Judy to Hash Tables“。然后,在谷歌上搜索这个标题可能会让你一生都在讨论和反驳。

我所知道的一个显式缓存敏感的trie是HAT-trie

HAT-trie,当正确实现时,是非常酷的。但是,对于前缀搜索,您需要在散列存储桶上执行排序步骤,这与前缀结构的概念有些冲突。

一个更简单的trie是burst-trie,它本质上给出了某种标准树(如BST)和trie之间的插值。我喜欢它的概念,它更容易实现。

票数 19
EN

Stack Overflow用户

发布于 2009-06-24 05:21:55

我和libTrie在一起很走运。它可能没有专门针对缓存进行优化,但对于我的应用程序来说,它的性能总是不错的。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1036504

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档