gpt4 book ai didi

c++ - 算法:计算单词列表频率的更好方法

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:22:13 25 4
gpt4 key购买 nike

这个问题实际上很简单,但我想在开始编码之前先听听一些想法。给定一个文件,每行都有一个单词,计算出现频率最高的 n 个数字。

不幸的是,我首先想到的是使用 std::map。我知道 C++ 的同行们会说 unordered_map 非常合理。

我想知道是否可以在算法方面添加任何内容,或者这基本上只是“谁选择最佳数据结构谁获胜”类型的问题。我在互联网上搜索过它并阅读了哈希表和优先级队列可能会提供一个运行时间为 O(n) 的算法,但是我认为实现起来会很复杂

有什么想法吗?

最佳答案

用于此任务的最佳数据结构是 Trie:

http://en.wikipedia.org/wiki/Trie

在计算字符串方面,它将胜过哈希表。

关于c++ - 算法:计算单词列表频率的更好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10200806/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com