gpt4 book ai didi

c++ - 如何排序 vector >>?

转载 作者:行者123 更新时间:2023-11-30 01:56:07 26 4
gpt4 key购买 nike

我希望能够对以下 vector 进行排序 -vector< pair< string , pair< int ,int >>> 基于 pair< int , int> 的第一个元素,如果它们相等,则根据它们的第二个元素对它们进行排序,我如何使用 STL 在 C++ 中做到这一点构建?

这种类型必须完成一些类似的事情

假设 E1 和 E2 是 2 个元素

如果 E1.second.first == E2.second.first 则必须对第二个元素进行比较。

最佳答案

如果您不能使用 C++11 功能,您仍然可以这样做:

typedef std::pair<std::string, std::pair<int, int>> AnkitSablok;

struct my_compare {
bool operator()(const AnkitSablok &lhs, const AnkitSablok &rhs) const {
return lhs.second < rhs.second;
}
};

int main()
{
std::vector<AnkitSablok> vec;

std::sort(vec.begin(), vec.end(), my_compare());
}

关于c++ - 如何排序 vector <pair<string , pair<int , int>>>?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20155220/

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