免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 8289 | 回复: 25
打印 上一主题 下一主题

[算法] 为什么搜索引擎用这个Trie树存储词组而不是Hash容器? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-09-05 17:52 |只看该作者 |倒序浏览
10可用积分
Trie和其他的树形结构一样,查找需要O(lgN)时间,为什么搜索引擎用这个存储而不是Hash容器? cpu和内存消耗Hash都低啊。Trie是O(lgN)吧

Hash的搜索是O(1)。除了大数据情况下,hash冲突的概率会升高以外,例如我的hash函数(fnv1.a)冲突概率大概是13万分之一,那么如果1亿个数据,那么相当于每10个hash bucket里面有一个key冲突的,需要比较两次,但是这样还是O(1)啊。

为什么不同Hash容器呢?

请高手指点!

最佳答案

查看完整内容

Hash表记录的存储特性是,存储在附近的记录没有任何关系,只能进行单记录精确查找!而Tire树相对于Hash表虽然查找效率低,但:1、可以快速完成大量记录的部分匹配2、应该还能用文件存储聚集的类似数据,以应对内存的不足

论坛徽章:
0
2 [报告]
发表于 2012-09-05 17:52 |只看该作者
Hash表记录的存储特性是,存储在附近的记录没有任何关系,只能进行单记录精确查找!
而Tire树相对于Hash表虽然查找效率低,但:
1、可以快速完成大量记录的部分匹配
2、应该还能用文件存储聚集的类似数据,以应对内存的不足

论坛徽章:
0
3 [报告]
发表于 2012-09-05 17:59 |只看该作者
回复 1# weichuang02


    怎么算出来的lgN? 又是怎么来的O(1)?
    Trie<Hash这是定死的

论坛徽章:
0
4 [报告]
发表于 2012-09-05 18:12 |只看该作者
hbmhalley 发表于 2012-09-05 17:59
回复 1# weichuang02


Hash都是O(1),这个有疑问吗?
树形结构搜索是lgN,这个有疑问吗?

论坛徽章:
0
5 [报告]
发表于 2012-09-05 18:17 |只看该作者
回复 3# weichuang02


    Trie 是基于比较的吗?

论坛徽章:
0
6 [报告]
发表于 2012-09-05 18:18 |只看该作者
本帖最后由 hbmhalley 于 2012-09-05 18:19 编辑

回复 3# weichuang02


    Hash 不需要遍历字符串+内的所有字符吗?

论坛徽章:
12
巳蛇
日期:2013-09-16 15:32:242015年辞旧岁徽章
日期:2015-03-03 16:54:152015年亚洲杯之约旦
日期:2015-02-11 14:38:37双鱼座
日期:2015-01-05 11:05:47戌狗
日期:2014-12-08 09:41:18戌狗
日期:2014-08-15 09:29:29双子座
日期:2014-08-05 09:17:17卯兔
日期:2014-06-08 15:32:18巳蛇
日期:2014-01-27 08:47:08白羊座
日期:2013-11-28 21:04:15巨蟹座
日期:2013-11-13 21:58:012015年亚洲杯之科威特
日期:2015-04-17 16:51:51
7 [报告]
发表于 2012-09-05 20:21 |只看该作者
回复 1# weichuang02


    如果你不了解trie,还是先搜搜看trie到底怎么做的吧。

论坛徽章:
0
8 [报告]
发表于 2012-09-05 20:54 |只看该作者
呵呵,乱说。
复杂度全算错。

论坛徽章:
0
9 [报告]
发表于 2012-09-06 09:27 |只看该作者
_Rayx 发表于 2012-09-05 20:54
呵呵,乱说。
复杂度全算错。


那大侠说,这两个复杂度应该是什么样子的?

论坛徽章:
0
10 [报告]
发表于 2012-09-06 10:38 |只看该作者
树形是按照单词查找。所以复杂度是单词长度
hash是把单词hash了再查找,平均o1,但是hash占用内存不是一点大,而是很大。。。bucket要占内存,链式hash还要指针
树形可以搜类似的词??
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP