对map的value进行排序?

jianlinlong 2003-07-14 03:38:19
typedef map<string, int> myMap;

myMap a;
a['123']=10;
a['456']=30;
a['457']=20;

怎么样对a的值进行排序?
...全文
48 点赞 收藏 5
写回复
5 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
jianlinlong 2003-07-14
有没有什么算法可以找出map中的value的最小值?(不要自已写for循环来断判)
回复
njSeeWhy 2003-07-14
map底层是用的rb-tree,它本身就是有序的,为什么还要再排序?用迭代器从begin()遍历到end(),得到的就是按key_value降序排列的元素。
回复
mechgoukiteng 2003-07-14
c++primer 3rd说的正确

sort()算法需要随机迭代器
回复
jianlinlong 2003-07-14
map默认是用Key排序的,我想用它的Value来排序。

c++primer 3rd上所说不能对map进行排序,除非,把那些值copy到vector中....

晕,
回复
晨星 2003-07-14
使用hash表干吗还要排序?hash表的查找比有序数组都快。
回复
发帖
工具平台和程序库
创建于2007-09-28

2.4w+

社区成员

C/C++ 工具平台和程序库
申请成为版主
帖子事件
创建了帖子
2003-07-14 03:38
社区公告
暂无公告