跟打器词语标记算法与理论编码

源于在开发了拖拉机跟打器之后,就有人问过,跟打器的词语标记是怎么算出来的,找了个时间写下这篇文章,整篇文章建立在java的基础上。
该文章中只提思路给打算自己创造跟打器或者对词语提示有兴趣的读者,不涉及到主要源码。

拖拉机跟打器词语标记算法

1)对码表按行读取,并以tab键为分隔提取出中文词条和英文编码,命名为,ch和bm(扣脚命名莫嫌弃)

2)将码表按照词条长度分类进入不同的HashMap中,并用ArrayList将多个HashMap<String,String>串起来。

3)运算第一次循环,将获取的文章遍历,并从长度最长开始匹配词条,大概就是如下图,如果到某个位置与词语,则将该词语下标记录,并从步骤2中存入的hashmap提取出该词语的编码长度,再将该文拥有的词按进行分类。

14899865-26e3cc15227f4d28.png

灵魂抽象画师

假设,第一次循环中获取匹配词语的占用位置如下图(红色),当在以后的回塑循环中(绿色),就要进行回避这些位置的匹配。并将词语对应编码长度放入对应的分类,往后以此类推。

14899865-a0fadcb83a036891.png

回塑时避让占用位置

 

14899865-2896bf207b28ab24.png

遍历避让占用位置

4)当你将所有长度的可能词条都遍历了一遍,我现在设定的是最长词条为13,即只遍历文章13遍(越到后面其实回避做的更多)。而存入HashMap中,使匹配消耗资源不至于过大。走完13遍之后,我们就可以根据我们之前以编码长度来分类的占用位置来进行标记颜色。

那么可以得知,我们一共创建了
用于存储码表关系的1个List中和对应最长词条长度n个Map
用于记录标色的对应目标文章中的最长词条编码长度m个List
(在实际操作中创建的可能比预想的更多,看每个人的思路)
对于非首选的其他,次选,三选,四选。可以识别编码的最后一位
这大概只讲思路不详细深入,希望读者自己多加研究。

理论编码(类似极速赛码)

对于理论编码,只是在词语标记的基础上增加了一些对编码的操作,其实也非常简单。说说我的做法

1)在词语标记的基础上,再创建一个HashMap<int,String>,命名为bianma,在词语标记步骤3与步骤4的遍历中,匹配到词语的占用位置后,将占用的首位放入key,对应的编码放入value。

2)等所有的遍历做完,做一个循环for(i从0到目标文章.length-1),for内执行,得出的showstr就是整篇文章的理论编码

for(int i=0;i<c.length;i++){
    if(Tips.bianma.containsKey(i)){
        showstr.append(Tips.bianma.get(i));
    }
}

算法缺点

在面对长词对短词的场合下,可以达到最佳的词语提示
例如:怎么样
这个时候就会标记“怎么样”,并不会单独标记“怎么”。

但在某些特定的同编码长度组合,有可能并不是最佳标记与最短码长打法。
例如:上身体
先不说这个诡异的词,但是这个组合在我的词库中是有两个词的
“上身”,“身体”

而“上身”编码为“uhuf”,“身体”编码为“ut”,这个时候,标记会标记“上身”的四码词颜色,并不是标记“身体”的二简颜色,最终获得的理论编码为“uhufti_”而不是理想的“uh_ut_”

算法复杂测试

在进行压力测试,导入了10w字的文章大概载了30秒。

以下是对提供的参考资料的总结,按照要求结构化多个要点分条输出: 4G/5G无线网络优化与网规案例分析: NSA站点下终端掉4G问题:部分用户反馈NSA终端频繁掉4G,主要因终端主动发起SCGfail导致。分析显示,在信号较好的环境下,终端可能因节能、过热保护等原因主动释放连接。解决方案建议终端侧进行分析处理,尝试关闭节电开关等。 RSSI算法识别天馈遮挡:通过计算RSSI平均值及差值识别天馈遮挡,差值大于3dB则认定有遮挡。不同设备分组规则不同,如64T和32T。此方法可有效帮助现场人员识别因环境变化引起的网络问题。 5G 160M组网小区CA不生效:某5G站点开启100M+60M CA功能后,测试发现UE无法正常使用CA功能。问题原因在于CA频点集标识配置错误,修正后测试正常。 5G网络优化与策略: CCE映射方式优化:针对诺基亚站点覆盖农村区域,通过优化CCE资源映射方式(交织、非交织),提升RRC连接建立成功率和无线接通率。非交织方式相比交织方式有显著提升。 5G AAU两扇区组网:与三扇区组网相比,AAU两扇区组网在RSRP、SINR、下载速率和上传速率上表现不同,需根据具体场景选择适合的组网方式。 5G语音解决方案:包括沿用4G语音解决方案、EPS Fallback方案和VoNR方案。不同方案适用于不同的5G组网策略,如NSA和SA,并影响语音连续性和网络覆盖。 4G网络优化与资源利用: 4G室分设备利旧:面对4G网络投资压减与资源需求矛盾,提出利旧多维度调优策略,包括资源整合、统筹调配既有资源,以满足新增需求和提质增效。 宏站RRU设备1托N射灯:针对5G深度覆盖需求,研究使用宏站AAU结合1托N射灯方案,快速便捷地开通5G站点,提升深度覆盖能力。 基站与流程管理: 爱立信LTE基站邻区添加流程:未提供具体内容,但通常涉及邻区规划、参数配置、测试验证等步骤,以确保基站间顺畅切换和覆盖连续性。 网络规划与策略: 新高铁跨海大桥覆盖方案试点:虽未提供详细内容,但可推测涉及高铁跨海大桥区域的4G/5G网络覆盖规划,需考虑信号穿透、移动性管理、网络容量等因素。 总结: 提供的参考资料涵盖了4G/5G无线网络优化、网规案例分析、网络优化策略、资源利用、基站管理等多个方面。 通过具体案例分析,展示了无线网络优化中的常见问题及解决方案,如NSA终端掉4G、RSSI识别天馈遮挡、CA不生效等。 强调了5G网络优化与策略的重要性,包括CCE映射方式优化、5G语音解决方案、AAU扇区组网选择等。 提出了4G网络优化与资源利用的策略,如室分设备利旧、宏站RRU设备1托N射灯等。 基站与流程管理方面,提到了爱立信LTE基站邻区添加流程,但未给出具体细节。 新高铁跨海大桥覆盖方案试点展示了特殊场景下的网络规划需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值