这个问题实际上很简单,但我想在开始编码之前先听听一些想法。给定一个文件,每行都有一个单词,计算出现频率最高的 n 个数字。
不幸的是,我首先想到的是使用 std::map
。我知道 C++ 的同行们会说 unordered_map
非常合理。
我想知道是否可以在算法方面添加任何内容,或者这基本上只是“谁选择最佳数据结构谁获胜”类型的问题。我在互联网上搜索过它并阅读了哈希表和优先级队列可能会提供一个运行时间为 O(n) 的算法,但是我认为实现起来会很复杂
有什么想法吗?
最佳答案
关于c++ - 算法:计算单词列表频率的更好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10200806/