c – 来自文本的字数…是否可以使用特里?

c – 来自文本的字数…是否可以使用特里?,第1张

概述我知道字数Qs已被多次询问,MAP似乎是它的一致选择. 但我觉得如果文本很大并且独特单词的数量非常高,MAP可能会占用很多空间.那么为什么不使用Trie呢?叶节点将存储每个单词的频率. 或者说,与特里相比,地图是一个明显的赢家? Plz帮助我理解. 附:在SDE采访中被问到了. 从 here开始,我们可以将英语中的单词估计为大约1M.从 here开始,我们得到了地图内存使用的公式.现在我们可以计算 我知道字数Qs已被多次询问,MAP似乎是它的一致选择.

但我觉得如果文本很大并且独特单词的数量非常高,MAP可能会占用很多空间.那么为什么不使用TrIE呢?叶节点将存储每个单词的频率.

或者说,与特里相比,地图是一个明显的赢家?

Plz帮助我理解.

附:在SDE采访中被问到了.

解决方法 从 here开始,我们可以将英语中的单词估计为大约1M.从 here开始,我们得到了地图内存使用的公式.现在我们可以计算出,如果你的文本是语言的所有单词,你的地图将占用(平均字长6个字符)(32个字节用于短字符串(windows)4个字节int)* 1M(可忽略的开销)= 36M~34MB记忆.

所以我要说除非你在嵌入式系统中,否则你不必担心.

总结

以上是内存溢出为你收集整理的c – 来自文本的字数…是否可以使用特里?全部内容,希望文章能够帮你解决c – 来自文本的字数…是否可以使用特里?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1214026.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存