搜索文档中出现次数最多的单词的最佳方式(算法)是什么?查找出现次数最多的字词
2
A
回答
2
查找有occures最次文档中的字可以在O(n)的一个简单histogram来完成[哈希基于]:
histogram <- new map<String,int>
for each word in document:
if word in histogram:
histogram[word] <- histogram[word] + 1
else:
histogram[word] <- 1
max <- 0
maxWord<- ""
for each word in histogram:
if histogram[word] > max:
max <- histogram[word]
maxWord <- word
return maxWord
这是O(n)的溶液中,并且由于问题显然是Omega(n)问题,它在big O notation方面是最优的。
+1
无论如何,这是理想的预期情况。 –
+0
A [特里结构(http://en.wikipedia.org/wiki/Trie)代替哈希映射给出确定性为O(n)的最坏情况,但是很可能是在实践中更慢。 – comco
2
- 扫描一次文档,记录您看过每个独特单词的次数(可能使用散列表或树来完成此操作)。
- 执行步骤1时,请跟踪目前为止所看到的所有单词中计数最高的单词。
相关问题
- 1. 查找出现次数最多的值
- 2. 查找字母中每个字母出现次数最多的单词
- 3. 查找多次出现的字典?
- 4. 最常出现的数字的数量......找出给定数字中出现次数最多的数字
- 5. 查找只出现一次的单词
- 6. 查找python中字符串中单词的出现次数3
- 7. iOS - 在字符串中查找单词出现次数的最有效方法
- 8. 查找字符串中字符的最后出现次数
- 9. 查找列表中列表中出现次数最多的对
- 10. SQL - 查找出现次数最多的对象
- 11. 查找连续出现次数最多的1
- 12. Java查找次数出现的次数
- 13. 查找数组中出现偶数次的单词 - Javascript
- 14. 查找字符串中只出现一次的单词
- 15. 查找多个文件中字符串出现的次数
- 16. C++:查找字符串中字符的最后一次出现
- 17. Shell或awk脚本来查找单词的出现次数
- 18. 使用awk和变量查找单词的出现次数
- 19. 如何查找单词在数组中出现多少次? Python的
- 20. 在javascript数组中查找出现次数最多的3个值。我只需要最多发生3次
- 21. aiml - 最后一次出现的单词
- 22. 如何查找字符串中所有单词的出现次数
- 23. 查找每个单词出现在字符串中的次数php
- 24. 查找列表中某个字符的最后一次出现
- 25. PHP:查找字符串中的最后一次出现
- 26. 查找字符串的最后一次出现
- 27. 查找多维数组内的数组出现次数
- 28. Python - 单词出现次数
- 29. 查找出现奇数次的元素
- 30. 查找行的出现次数
发生什么事的最大次数? – DeCaf
该文档中出现**字**的最大次数 – Saket
您是否正在查找文档中发生最多的单词?一个简单的直方图将在O(n)中实现。 – amit