http://www.hankcs.com/nlp/ansj-word-pairs-array-tire-tree-achieved-with-arrays-dic-dictionary-format.html

arrays.dic是一个双数组Trie树格式的词典,用文本的形式储存了索引,字串,base,check,status与词性。

一个直观的图示:

index就是base数组中的下标。

term是词的当前状态,不一定代表一个词,如“一举一”是“一举一动”的前缀。

base是base数组的值。代表字串的当前状态,其实就是字串一路按base[tx] = base[t] + x查过来的值。比如base[一举一动] = base[一举一] + code(动)。特别地,如果字串长度为1的话(字符),那么base值就是字符的双字节码。

check是check数组的值。check是用来验证这个词是从哪个状态转换过来的。比如是由转换过来的。base[105540] + 21160 = 126700.

status是term的成词状态:1:继续 2:是个词语但是还可以继续 3:确定。参考。

nature是这个词以这些词性出现的频次。

转载请注明:码农场 » Ansj分词双数组Trie树实现与arrays.dic词典格式

转载于:https://www.cnblogs.com/DjangoBlog/p/4073062.html

Ansj分词双数组Trie树实现与arrays.dic词典格式相关推荐

  1. 双数组Trie树(DoubleArrayTrie)Java实现

    http://www.hankcs.com/program/java/%E5%8F%8C%E6%95%B0%E7%BB%84trie%E6%A0%91doublearraytriejava%E5%AE ...

  2. 双数组trie树的基本构造及简单优化

    一 基本构造 Trie树是搜索树的一种,来自英文单词"Retrieval"的简写,可以建立有效的数据检索组织结构,是中文匹配分词算法中词典的一种常见实现.它本质上是一个确定的有限状 ...

  3. python Trie树和双数组TRIE树的实现. 拥有3个功能:插入,删除,给前缀智能找到所有能匹配的单词...

    #coding=utf-8 #字典嵌套牛逼,别人写的,这样每一层非常多的东西,搜索就快了,树高26.所以整体搜索一个不关多大的单词表 #还是O(1). ''' Python 字典 setdefault ...

  4. 双数组trie树详解

    目录 双数组trie树的构建 构建base array 构建check array 双数组trie树的查询 双数组trie树的构建 NLP中trie树常用于做快速查询,但普通的trie树由于要保存大量 ...

  5. 关于双数组Trie查询词典构造总结

    原贴:http://www.firtex.org/firtex_forum/archiver/?tid-241.html FirteX开发论坛 » FirteX开发者专区 » 关于双数组Trie查询词 ...

  6. 用Python实现字典树(Trie)与双数组字典树(DATrie)

    1. 字典树(Trie) 假如我们把字典中的词以记录的形式(无序)存入数据库中.现给定一串字符,要查找该字符串是否为字典中的词.因为数据库中的记录是无序的,所以,最朴素的方法就逐记录匹配.此方法简单, ...

  7. Kiner算法刷题记(二十一):字典树与双数组字典树(数据结构基础篇)

    字典树与双数组字典树(数据结构基础篇) 系列文章导引 系列文章导引 开源项目 本系列所有文章都将会收录到GitHub中统一收藏与管理,欢迎ISSUE和Star. GitHub传送门:Kiner算法算题 ...

  8. 双数组Trie的一种实现

    An Implementation of Double-Array Trie 双数组Trie的一种实现 原文:http://linux.thai.net/~thep/datrie/datrie.htm ...

  9. 字典树与双数组字典树

    树的节点代表集合 树的边代表关系 字典树代码 查找代码 #include<iostream> #include<cstdio> #include<queue> #i ...

最新文章

  1. 软件工程白盒测试的流图怎么画_功能安全理论 | 黑盒 与 白盒
  2. bin文件怎么转换成文本文档_Python脚本4:根据txt文本,批量创建文件夹
  3. 计算(信息学奥赛一本通-T1356)
  4. UNIX-LINUX编程实践教程-第八章-实例代码注解-写一个简单的shell
  5. 163 邮件 服务器 ssl,为什么用163的smtp服务时要关闭TLS才能发送邮件?
  6. 华为荣耀20和x10比较_华为和荣耀旗舰该如何选?其实懂手机的朋友只选择前者...
  7. Android下结束进程的方法
  8. mySQL用alter使列为空_我可以配置MySQL,以便新添加的列默认允许空值吗?
  9. 服务器定期监控数据_机房环境监控的实践【斯必得智慧机房 】
  10. .net下模拟不同身份登陆以获取不同权限
  11. c++运动学正反解 ros_ROS系统MoveIt玩转双臂机器人系列(六)–D-H逆运动学求解程序(C++)...
  12. Hive的行转列及列转行函数使用总结
  13. Android项目打第三方jar包
  14. Python 筛法求素数
  15. 自适应滤波器 | 时域ALE算法
  16. 【职场新贵】告诉你如何在压力下高效工作
  17. python实现税后工资计算器_[宜配屋]听图阁
  18. Science | 为什么会吃太多?研究发现肠道细菌可以与大脑直接对话
  19. 中职计算机应用专业(云计算方向)建设实践
  20. mac idea java 配置_Mac JAVA环境变量配置及IDEA JDK配置

热门文章

  1. linux的 vi编辑器在哪,Linux Vi编辑器的使用
  2. java面试题一 静态变量
  3. IETF:名词历史简介互联网精神的典范
  4. 姚期智:人工智能存在三大技术瓶颈
  5. 2021年高考成绩查询陕西文科,2021年陕西高考文科二本分数线预测
  6. 路由选项卡_M32全面培训第四讲——路由配置
  7. 薄壁轴承摩擦力矩_机器人四点接触薄壁轴承详细介绍
  8. redis 使用-hiredis库使用(一) 基本篇 看完本文就可以上手工作了
  9. 【算法与数据结构专场】BitMap算法基本操作代码实现
  10. 学习《apache源代码全景分析》之常用过滤器摘录