【发布时间】:2012-08-11 18:43:04
【问题描述】:
cmp
bool cmp(const pair<string, long> &p1, const pair<string, long> &p2){
if(p1.second!=p2.second)
return p1.second < p2.second;
return strcmp(p1.first.c_str(),p2.first.c_str());
}
大家好,
我正在尝试根据pair 的second 元素对vector 进行排序。如果这对的second 元素相等,那么我比较pair 的first 元素。
我正在使用上面的代码对包含string 和int pair 的vector 进行排序。我正在使用sort_heap(vector.begin(),vector.end(),cmp); 调用排序函数。但这似乎没有按预期工作。
【问题讨论】:
-
谢谢。会这样做。我是堆栈溢出的新手