gpt4 book ai didi

c++ - 在键排序后按值排序 multimap

转载 作者:太空狗 更新时间:2023-10-29 20:13:26 25 4
gpt4 key购买 nike

multimap <int, string> mm; 

(1, A),
(2, B),
(3, D),
(3, C)

我能够使用多映射键按数字顺序获取一些数据,但在重复的情况下,我希望值也按顺序排列。

(1, A),
(2, B),
(3, C),
(3, D)

最简单的方法是什么?看到 map 如何仅按键排序,我想我必须制作一组某种类型的 map ,但我不确定如何进行。

最佳答案

有两种合理的解决方案---选择更有意义的一种。

如果您查看 int作为键和 string作为一个值,但一个键可以映射到多个值——换句话说,如果您查看两个具有相同 int 的对作为同一“组”的一部分,您可能希望轻松地遍历特定组,然后使用 map<int, multiset<string> > .

如果您查看每个 int , string对是不同的,有些对可能恰好具有相同的 int , 那么你想要一个 multiset<pair<int, string> > .

如果不存在重复对(intstring 相同),则它们变为map<int, set<string> >set<pair<int, string> >分别。

关于c++ - 在键排序后按值排序 multimap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21448954/

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