更新时间:2022-04-29 09:16:29
使用反向迭代器使用 std :: partial_sort
。
例如:
int x[20];
std::iota(std::begin(x), std::end(x), 0);
std::random_shuffle(std::begin(x), std::end(x));
std::reverse_iterator<int*> b(std::end(x)),
e(std::begin(x));
std::partial_sort(b, b+10, e, std::greater<int>());
for (auto i : x)
std::cout << i << ' ';