当前位置: 首页 > news >正文

Perfect Hash能用于分词吗?

CMPH - C Minimal Perfect Hashing Library

装起来很方便。apt list有:libcmph0 libcmph-dev libcmph-tools

测试数据是229837个词,从 意义 一一 ... 中航技进出口有限责任公司 2MB

在Intel N100上,cmph -g words 仅耗时0.142秒,让我大吃一惊。生成的words.mph 1.9M

然后用cmph -v -m words.mph query去查询。

请注意,不加-v选项不知道查询结果。query是个文件而不是要查的字符串。

首先cmph -v -m words.mph w2查下字节,每个词都都有个unique ID.

然后造了个query内容如下:

aa
ccc
dd
e
fgh
这也不是个词
这可不是个词

全都有id,都误找到了。


然后用words生成w2,所有的词都是12个汉字,不够的用“无”填充,如:意义无无无无无无无无无无

这次-g跑得更快了:0.109s,查询结果如下:

aa -> 0
ccc -> 127860
dd -> 217306
More than 1 keys were mapped to bin 0
Duplicated or unknown key e in the input
e -> 0
fgh -> 90963
More than 1 keys were mapped to bin 0
Duplicated or unknown key 这也不是个词 in the input
这也不是个词 -> 0
这可不是个词 -> 147619

CMPH

apt search gperf的结果

  • ace-gperf ACE perfect hash function generator
  • gperf Perfect hash function generator
  • triehash Generates perfect hash functions as native machine code

 

Dynamic Perfect Hash Function (dphf) generate a perfect hash function object according to an user provided array.

 

In order to use dphf

  1. include "dphf.hpp"
  2. define a class derived from dphf_hook
  3. populate a vector of your class object (defined in step 2)
  4. construct a dphf object using the vector (created in step 3)
  5. using the object to find the desired item.

作者是Charles Zhang.

(试过了再更新)


 

PTHash is a C++ library implementing fast and compact minimal perfect hash functions as described in the following research papers:

PHOBIC: Perfect Hashing with Optimized Bucket Sizes and Interleaved Coding (ESA 2024).

可能最新,但API看起来不简单,不想试了。


 

AI说:

image

 

http://www.jsqmd.com/news/35107/

相关文章:

  • 小白必看!AI写论文的实用方法全攻略
  • 初中几何①手拉手模型 +两个相似(一般、等腰、等腰直角、60度角、30度角)三角形 或 矩形 的手拉手模型
  • 一对一视频直播app开发,golang fmt格式“占位符” - 云豹科技
  • 2025年立体水幕电影直销厂家权威推荐榜单:3d水幕电影/水幕电影喷泉/水幕电影激光秀源头厂家精选
  • 毕业论文神器:9款免费AI写论文工具全测评,轻松过查重!
  • 与跨域 iframe 通信示例
  • 2025年新疆残膜回收机公司权威推荐榜单:棉花残膜回收机/北疆残膜回收机/残膜收膜打包一体机设备源头厂家精选
  • 实用指南:【Canvas与旗帜】正义联盟之刃
  • 2025年新疆大马力拖拉机公司权威榜单:新疆拖拉机/凯尔3004/大马力农机源头厂商精选
  • 2025年冷风机价格实力厂家权威推荐榜单:移动冷风机/大功率冷风机/节能冷风机源头厂家精选
  • 2025年特殊气体压缩机直销厂家权威推荐榜单:工艺气体螺杆式压缩机/沼气压缩机/化工尾气压缩机源头厂家精选
  • 1v1视频软件源码,php进程之间共享socket资源 - 云豹科技
  • 详细介绍:智能合约在分布式密钥管理系统中的应用
  • 23种设计模式——享元模式(Flyweight Pattern) - 实践
  • 将 Zabbix 的数据导入到 Grafana 中进行可视化
  • zabbix的详细使用教程
  • WAF 在 “纯内网环境 + 内网可上互联网” 场景中的作用分析
  • 网络工程师必备神器
  • react和vue
  • grafana的详细使用教程
  • 十大最佳网络监控工具
  • LaTeX学习笔记:快速上手指南
  • koupleless demo依赖问题
  • 有一种考前背书的美(省选 2026 Edition)
  • 【C语言】杨辉三角:数学之美与编程建立的完美结合
  • 完整教程:《算法闯关指南:优选算法--二分查找》--17.二分查找(附二分查找算法简介),18. 在排序数组中查找元素的第一个和最后一个位置
  • 2025.11 模拟赛日志
  • facefusion本地部署环境配置
  • 2025年知名的304不锈钢带厂家推荐及采购参考
  • 完整教程:基于java的ssm框架舞蹈网站