Open In App

How to reverse an Array using STL in C++?

Improve
Improve
Improve
Like Article
Like
Save Article
Save
Share
Report issue
Report

Given an array arr[], reverse this array using STL in C++. Example:

Input: arr[] = {1, 45, 54, 71, 76, 12}
Output: {12, 76, 71, 54, 45, 1}

Input: arr[] = {1, 7, 5, 4, 6, 12}
Output: {12, 6, 4, 5, 7, 1}

Approach: Reversing can be done with the help of reverse() function provided in STL. Syntax:

reverse(start_index, index_next_to_last_index);

For example to reverse an array arr[] of size 'n' we need to write as follows:
reverse(arr, arr+n); 
if we observe it is reverse(arr+0, arr+n);
which means, the reverse function reverse the elements in an array from index-0 to index-(n-1)

Ex: Given an array arr of size 7 
reverse(arr, arr+5); 
The above reverse function reverses the elements in an array from index-0 to index-4

CPP




// C++ program to reverse Array
// using reverse() in STL
 
#include <algorithm>
#include <iostream>
using namespace std;
 
int main()
{
    // Get the array
    int arr[] = { 1, 45, 54, 71, 76, 12 };
 
    // Compute the sizes
    int n = sizeof(arr) / sizeof(arr[0]);
 
    // Print the array
    cout << "Array: ";
    for (int i = 0; i < n; i++)
        cout << arr[i] << " ";
 
    // Reverse the array
    reverse(arr, arr + n);
 
    // Print the reversed array
    cout << "\nReversed Array: ";
    for (int i = 0; i < n; i++)
        cout << arr[i] << " ";
    return 0;
}


Output:

Array: 1 45 54 71 76 12 
Reversed Array: 12 76 71 54 45 1

Time Complexity: O(N) where N is the size of the array.
Auxiliary Space: O(1)


Last Updated : 28 Jul, 2022
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads