输入法存储结构?

做一个c语言实现的输入法,可以考虑那些存储结构?

阅读 1.6k
1 个回答

我能想到的几种存储结构,大致有:
字典树:用于存储汉字和拼音的对应关系,方便通过拼音查找对应的汉字。
动态数组:用于存储用户输入的字符,方便进行联想和候选词推荐。
哈希表:用于存储常用词语,方便快速检索和匹配。
队列:用于实现输入缓冲区,将用户输入的字符暂时保存在队列中,待处理完成后再输出到屏幕上。
栈用于实现撤销操作,将之前输入的字符从动态数组中弹出并删除。
当然,还可以结合指针与上述结合,去做更快捷的实现。我的这篇回答“很理论”,惭愧,本着实事求是的原则,我对于字典树的理解非常的浅薄,仅停留表面,如果楼主能够利用字典树的方法实现,也欢迎评论区分享给我。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进