×

C++ STL Tutorial

C++ STL Algorithm

C++ STL Arrays

C++ STL String

C++ STL List

C++ STL Stack

C++ STL Set

C++ STL Queue

C++ STL Vector

C++ STL Map

C++ STL Multimap

C++ STL MISC.

Sort an array in descending order using sort() function in C++ STL

C++ STL - sort() function Example: In this article, we are going to learn how to sort array elements in Descending Order using sort() function of C++ - STL?
Submitted by IncludeHelp, on January 03, 2018

Problem statement

Given an array and we have to sort the elements in Descending Order using C++ STL sort() function.

How to Sort an Array in Descending order using STL in C++?

It is a built-in function of algorithm header file it is used to sort the containers like array, vectors in specified order.

To sort elements in Descending order, we need to pass a function as third parameter, we can use greater<>() function.

This function creates comparison between the elements and puts the greater (largest element) first and then we can get descending order sorted elements.

Reference: http://www.cplusplus.com/reference/algorithm/sort/

Syntax

sort(first, last, camp/function);

Parameter(s)

  • first - is the index (pointer) of first element from where we want to sort the elements.
  • last - is the last index (pointer) of last element.
  • camp/function - a comparison function that will create comparison between the elements.

Sample Input and Output

Input:
Array: 10, 1, 20, 2, 30

Output:
Sorted Array: 30, 20, 10, 2, 1

C++ program to sort an array in descending order

#include <algorithm>
#include <iostream>
using namespace std;

int main() {
  // declare and define an array
  int arr[] = {10, 1, 20, 2, 30};

  // size of the array
  // total size/size of an element
  int size = sizeof(arr) / sizeof(int);

  // calling sort() to sort array elements
  sort(arr, arr + 5, greater<>());

  // printing sorted elements
  cout << "Sorted elements are: ";
  for (int i = 0; i < size; i++) cout << arr[i] << " ";

  return 0;
}

Output

Sorted elements are: 30 20 10 2 1 

Comments and Discussions!

Load comments ↻





Copyright © 2024 www.includehelp.com. All rights reserved.