c – 来自文本的字数…是否可以使用特里?
发布时间:2020-12-16 09:36:13 所属栏目:百科 来源:网络整理
导读:我知道字数Qs已被多次询问,MAP似乎是它的一致选择. 但我觉得如果文本很大并且独特单词的数量非常高,MAP可能会占用很多空间.那么为什么不使用Trie呢?叶节点将存储每个单词的频率. 或者说,与特里相比,地图是一个明显的赢家? Plz帮助我理解. 附:在SDE采访中
我知道字数Qs已被多次询问,MAP似乎是它的一致选择.
但我觉得如果文本很大并且独特单词的数量非常高,MAP可能会占用很多空间.那么为什么不使用Trie呢?叶节点将存储每个单词的频率. 或者说,与特里相比,地图是一个明显的赢家? Plz帮助我理解. 附:在SDE采访中被问到了. 解决方法
从
here开始,我们可以将英语中的单词估计为大约1M.从
here开始,我们得到了地图内存使用的公式.现在我们可以计算出,如果你的文本是语言的所有单词,你的地图将占用(平均字长6个字符)(32个字节用于短字符串(Windows)4个字节int)* 1M(可忽略的开销)= 36M~34MB记忆.
所以我要说除非你在嵌入式系统中,否则你不必担心. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |