¿Cómo revertir una array usando STL en C++?

Dada una array arr[], invierta esta array usando STL en C++. Ejemplo:

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}

Enfoque: la inversión se puede realizar con la ayuda de la función reverse() proporcionada en STL. Sintaxis:

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;
}
Producción:

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

Complejidad de tiempo: O(N) donde N es el tamaño de la array.
Espacio Auxiliar: O(1)

Publicación traducida automáticamente

Artículo escrito por Code_r y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *