码迷,mamicode.com
首页 > 其他好文 > 详细

字典树

时间:2017-08-11 12:21:55      阅读:125      评论:0      收藏:0      [点我收藏+]

标签:查找树   大量   字符串比较   log   logs   最大   时间   images   节点   

 Trie树,即字典树,又称单词查找树或键树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计和排序大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:最大限度地减少无谓的字符串比较,查询效率比哈希表高。

而Tire树是很典型的用空间换时间的一种算法,为什么这么说呢?我在后面会做详尽解释,现在我们还是慢慢来。

Tire树的三大特点:

 

  • 根数的节点不包含任何字符,除根节点以外节点有且只包含一个字符。
  • 从根节点到某一节点,构成一个字符串,如果标记为红色,表示该字符串存在,反之不存在。
  •  
  • 每个节点所包含的子节点都不相同。(在同一等级的节点上不存在相同的字符);

Tire树之怎样的一种模型:

技术分享

 

看到这图之后,你是否还有疑惑,如果是!没事,现在请你想象一下,某处有一个点,里面什么都没有。假设你有26个不同的点,你需要将这些点一个一个的接在第一个点的下方。

接完后,你又得到26*26个点,你先在又需要把这些带你接到上26个点下,又要保证在同一个节点下的点不能够相同。好,你很累了,但是你有被要求在接26*26*26个点接上去。这

时候你很烦了,你不知道什么时候是个头。

 

字典树

标签:查找树   大量   字符串比较   log   logs   最大   时间   images   节点   

原文地址:http://www.cnblogs.com/7750-13/p/7345037.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!