C++ STL proporciona una función que copia los elementos del rango dado pero en orden inverso. A continuación se muestra un programa simple para mostrar el funcionamiento de copia_inversa().
Ejemplos:
Input : 1 2 3 4 5 6 7 8 9 10 Output : The vector is: 10 9 8 7 6 5 4 3 2 1
La función toma tres parámetros. Los dos primeros son el rango de los elementos que se copiarán y el tercer parámetro es el punto de partida desde donde se copiarán los elementos en orden inverso.
// C++ program to copy from array to vector // using reverse_copy() in STL. #include <bits/stdc++.h> using namespace std; int main() { int src[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; int n = sizeof(src) / sizeof(src[0]); vector<int> dest(n); reverse_copy(src, src + n, dest.begin()); cout << "The vector is: \n"; for (int x : dest) { cout << x << " "; } return 0; }
Producción:
The vector is: 10 9 8 7 6 5 4 3 2 1
A continuación se muestra un ejemplo de copia de vector a vector.
// C++ program to copy from array to vector // using reverse_copy() in STL. #include <bits/stdc++.h> using namespace std; int main() { vector<int> src { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; vector<int> dest(src.size()); reverse_copy(src.begin(), src.end(), dest.begin()); cout << "The vector is: \n"; for (int x : dest) { cout << x << " "; } return 0; }
Producción:
The vector is: 10 9 8 7 6 5 4 3 2 1
Publicación traducida automáticamente
Artículo escrito por Prateek Sharma 7 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA