admin管理员组文章数量:1632346
T9输入法,名字听起来陌生,可是大家却经常使用它。可以说T9输入法是输入法历史中的一次革命。至少自T9输入法开始,输入法有长足的进步。
如图手机中九个数字键。26个英文字母被分配到2至9这8个数字键上。以前想输入英文单词的时候总是需要连续多次按某个键,才能得到目标字母。比如想输入“hello”,就需要按两次4,两次3,三次5,三次5,三次6.输入一个单词需要数十次的按键,更何况还有经常按错的情况。编辑一条短信非常麻烦。
T9输入法很好的解决了这一问题。用户利用9个数字键输入非常杂的英文单词并且不用重复按某个字符。系统将会根据已有词库找出可能性最大的单词。例如,目标单词为“hello”,只需输入4,3,5,5,6即可,系统会自动过滤掉不合法的单词如“gdjjm”。排除非法单词,只考虑合法单词,这样大大加速了输入速度。
然而这只是第一步,因为每次输入数字之后,可能有多个候选单词前缀与此匹配。这就需要按可能性提供可能性最大的(最常用)的英文单词。比如系统已知两个单词:"idea","hello"。idea最常用(可能度最高)。那么当依次输入4,3,5,5,6时,对于每次按键系统给出的候选单词应该是:
i (4)
id (3)
hel (5)
hell (5)
hello (6)
这样的话,通过T9输入法就可以大大提高输入速度和简洁度。
如何实现T9输入法呢?
(1)建立词库
将大量单词储备起来便于快速查找,字典树无疑是很好的选择。每个节点将存储此前缀的可能度,结构如下:
/*
* 字典树
版权声明:本文标题:c语言实现t9输入法思路,T9输入法的实现 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dongtai/1729129020a1187582.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论