gpt4 book ai didi

c++ - 订购 unordered_map C++ 时数据丢失

转载 作者:行者123 更新时间:2023-11-28 02:07:22 25 4
gpt4 key购买 nike

我有一个 unordered_map<string, int> freq我命令它把它变成一个 map<int,string> freq2 .我使用下一个函数来做到这一点:

map<int, string> order(unordered_map<string, int> x) {
map <int, string> map;
for (auto it = x.begin(); it != x.end(); ++it) {
map.emplace(it->second, it->first);
}

return map;
}

unordered_map 的大小是 2355831,返回的是 map是 505,所以如您所见,数据丢失非常大,我不知道为什么......知道为什么会这样吗?

谢谢。

编辑:

感谢所有人,你们都很好,我有很多具有相同值的 int,这就是为什么我丢失了数据(从我这方面来说真的很愚蠢,以前没有看到它)

最佳答案

这很可能是因为 int 中存在重复项值。尝试替换 map<int, string>multimap<int, string> .

关于c++ - 订购 unordered_map C++ 时数据丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36971304/

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