小编Jus*_*mer的帖子

按 unordered_map 内的结构数据排序

我有一个std::unordered_map<id, town_data> data,其中town_data 是struct不同的信息 - 名称(字符串)、征收的税款(整数)和距首都城镇的距离(整数)。我应该构建一个std::vector<id>,它按前面提到的距离从低到高排序。我很难弄清楚如何才能有效地完成这项工作。我想我可以简单地循环data,通过该循环/插入创建std::map<distance, id>,按距离排序,除非默认情况下对地图进行排序,然后将其逐键复制到新向量std::vector<id>。但这看起来确实是一种浪费的做法。我在这里缺少一些捷径或更有效的解决方案吗?

c++ unordered-map vector time-complexity

2
推荐指数
1
解决办法
277
查看次数

标签 统计

c++ ×1

time-complexity ×1

unordered-map ×1

vector ×1