Чтобы отсортировать список элементов в C++ в порядке убывания (от большего к меньшему), вы можете использовать различные методы. Вот несколько часто используемых подходов:
-
std::sort с помощью специального компаратора:
#include <algorithm> #include <vector> bool compare(int a, int b) { return a > b; } int main() { std::vector<int> numbers = {5, 2, 8, 1, 9}; std::sort(numbers.begin(), numbers.end(), compare); // numbers will now be sorted in descending order return 0; } -
Использование std::greater:
#include <algorithm> #include <vector> int main() { std::vector<int> numbers = {5, 2, 8, 1, 9}; std::sort(numbers.begin(), numbers.end(), std::greater<int>()); // numbers will now be sorted in descending order return 0; } -
Использование лямбда-функции:
#include <algorithm> #include <vector> int main() { std::vector<int> numbers = {5, 2, 8, 1, 9}; std::sort(numbers.begin(), numbers.end(), [](int a, int b) { return a > b; }); // numbers will now be sorted in descending order return 0; } -
Использование пользовательской функции сортировки:
#include <algorithm> #include <vector> bool compare(int a, int b) { return a > b; } void customSort(std::vector<int>& numbers) { std::sort(numbers.begin(), numbers.end(), compare); } int main() { std::vector<int> numbers = {5, 2, 8, 1, 9}; customSort(numbers); // numbers will now be sorted in descending order return 0; }