GeeksforGeeks App
Open App
Browser
Continue

# How to sort a Vector in descending order using STL in C++?

Given a vector, sort this vector in descending order using STL in C++.

Example:

```Input: vec = {1, 45, 54, 71, 76, 12}
Output: {76, 71, 54, 45, 12, 1}

Input: vec = {1, 7, 5, 4, 6, 12}
Output: {12, 7, 6, 5, 4, 1}```

Approach: Sorting can be done with the help of sort() function provided in STL.

Syntax 1:

`sort(arr, arr + n, greater<T>()); `

## C++

 `// C++ program to sort Vector``// in descending order``// using sort() in STL` `#include ``using` `namespace` `std;` `int` `main()``{``    ``// Get the vector``    ``vector<``int``> a = { 1, 45, 54, 71, 76, 12 };` `    ``// Print the vector``    ``cout << ``"Vector: "``;``    ``for` `(``int` `i = 0; i < a.size(); i++)``        ``cout << a[i] << ``" "``;``    ``cout << endl;` `    ``// Sort the vector in descending order``    ``sort(a.begin(), a.end(), greater<``int``>());` `    ``// Print the reversed vector``    ``cout << ``"Sorted Vector in descending order:\n"``;``    ``for` `(``int` `i = 0; i < a.size(); i++)``        ``cout << a[i] << ``" "``;``    ``cout << endl;` `    ``return` `0;``}`

Output

```Vector: 1 45 54 71 76 12
Sorted Vector in descending order:
76 71 54 45 12 1 ```

Time Complexity: O(N log N)
Auxiliary Space: O(1)

Syntax 2:

`sort(arr.rbegin(),arr.rend()); `

## C++

 `// C++ program to sort Vector``// in descending order``// using sort() in STL` `#include ``using` `namespace` `std;` `int` `main()``{``    ``// Get the vector``    ``vector<``int``> a = { 1, 7, 5, 4, 6, 12 };` `    ``// Print the vector``    ``cout << ``"Vector: "``;``    ``for` `(``int` `i = 0; i < a.size(); i++)``        ``cout << a[i] << ``" "``;``    ``cout << endl;` `    ``// Sort the vector in descending order``    ``sort(a.rbegin(), a.rend());` `    ``// Print the reversed vector``    ``cout << ``"Sorted Vector in descending order:\n"``;``    ``for` `(``int` `i = 0; i < a.size(); i++)``        ``cout << a[i] << ``" "``;``    ``cout << endl;` `    ``return` `0;``}`

Output

```Vector: 1 7 5 4 6 12
Sorted Vector in descending order:
12 7 6 5 4 1 ```

Time Complexity: O(N log N), Where N is the size of the vector
Auxiliary Space: O(1)

My Personal Notes arrow_drop_up