0

全部,

std::sort() 将按升序排序。有没有一种简单、方便、快捷的降序排序方法?

谢谢你。

4

2 回答 2

7

如果您正在对ints 进行排序,例如,在 range 中[begin, end)

std::sort(begin, end, std::greater<int>());

std::greater是一个适用>于其操作数的二元函数对象。您也可以提供一个 lambda 表达式:

std::sort(begin, end, [](int a, int b) { return a > b; });
于 2013-03-21T22:33:20.230 回答
2

编写一个函数进行比较:

bool comp(int a, int b)
{
    return a > b;
}

然后排序,比如说,a vector vec,调用sort(vec.begin(), vec.end(), comp)

于 2013-03-21T22:35:19.353 回答