gpt4 book ai didi

c++ - 对值进行排序

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:45:03 25 4
gpt4 key购买 nike

我想知道如何对成对结构中的值进行排序。非常感谢任何指点。

下面粘贴了最小的工作示例。

#include <iostream>

using namespace std;

int main ()
{

pair <int, int> myPair;
myPair = make_pair(5, 3);
cout << myPair.first << " " << myPair.second << endl;

return 0;
}

最佳答案

std::pair<U,V> 本身不提供任何订购功能。如果您不想自己编写任何其他代码(如条件 std::swap ),那么最接近的是使用 std::minmax 而不是 std::make_pair :

#include <algorithm>

std::pair<int, int> myPair = std::minmax(5, 3);

默认情况下,std::minmax将使用 小于 运算符 ( < ) 来确定元素的顺序。可以任意定制:

std::pair<int, int> a = std::minmax(5, 3, [](auto x, auto y){ return x*10 < y+20; });

std::pair<std::string, std::string> b = std::minmax("foo"s, "bar"s, std::greater<>{});

关于c++ - 对值进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27268850/

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