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

• Difficulty Level : Basic
• Last Updated : 28 Jul, 2022

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 ` `#include ` `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);`   `    ``// 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)

My Personal Notes arrow_drop_up
Recommended Articles
Page :