这是一条线的形式我输入文件:值排序C++有很多值的地图数据结构的关键
人口|城市|州| ListOfHighways ==>
6|Oklahoma City|Oklahoma|I-35;I-44;I-40 6|Boston|Massachusetts|I-90;I-93 8|Columbus|Ohio|I-70;I-71
我需要创建一个输出文件与此以下格式:
Population (newline) City, State Interstates: Comma-separated list of interstates, sorted by interstate number ascending (newline)
==>实施例:
6
Boston, Massachusetts
Interstates: I-90, I-93
Oklahoma City, Oklahoma
Interstates: I-35, I-40, I-44
8
Columbus, Ohio
Interstates: I-70, I-71
在这里,具有相同人口的国家应该组合在一起,他们必须先按州和县再按字母顺序排序。我能够得到正确的格式,但我无法确定使用哪种数据结构来排序州和城市。我现在有map<int, vector<string> >
。关键是人口,其余的是向量。欢迎任何建议。
你可以证明你到目前为止? – 2015-02-07 05:35:55
有很多方法。一个可能的方向:使用一个结构来保存你的'city','state'和'interstates';使用'map>'并且在载入所有数据后,使用'std :: sort(begin,end,sort_function)对每个'vector'进行排序' –
tofi9
2015-02-07 05:38:55
@taoufik感谢您的建议!有效。我能够使用函数对我的矢量进行排序。 – 2015-02-07 15:19:22