std :: swap_ranges () con ejemplo en C ++

En este artículo vamos a ver los detalles de un swap_ranges estándar función de biblioteca () y sus usos .

std :: swap_ranges ()

swap_ranges () elementos permutas entre dos rangos. La sintaxis de la función anterior es:

ForwardIterator swap_ranges(
ForwardIterator first1,
ForwardIterator last1,
ForwardIterator first2
);

Parámetro (s):

  • first1 : Iterator a partir de un rango.
  • last1 : Iterator a fin de un rango.
  • primero2 : Iterator a partir de otro rango.

no necesitamos especificar ultimo2 como todos los elementos de las necesidades en primer lugar a distancia para ser intercambiados con el segundo rango.

dicen los rangos son:

{1, 2, 3, 4, 5, 6}
{11, 12, 13, 14, 15}

Si intercambiamos primeros tres elementos, entonces después de cambiar lo haría ser:

{11, 12, 13, 4, 5, 6}
{1, 2, 3, 14, 15} & nbsp;

A continuación se muestra el ejemplo & amp; aplicación de swap_ranges ()

C ++ Implementación:

#include <bits/stdc++.h>
using namespace std;
void printvector(vector<int> arr)
{
for (auto it : arr)
cout << it << " ";
cout << endl;
}
int main()
{
vector<int> arr1{ 1, 2, 3, 4, 5, 6 };
vector<int> arr2{ 11, 12, 13, 14, 15 };
//before swapping
cout << "Before swapping, the ranges are:n";
printvector(arr1);
printvector(arr2);
//swap first three elements of arr1 with
//first three of arr2
//first1=arr1.begin()
//last1=arr1.begin()+3
//first2=arr2.begin()
swap_ranges(arr1.begin(), arr1.begin() + 3, arr2.begin());
//After swapping
cout << "After swapping, the ranges are:n";
printvector(arr1);
printvector(arr2);
return 0;
}

salida:

Before swapping, the ranges are:
1 2 3 4 5 6
11 12 13 14 15
After swapping, the ranges are:
11 12 13 4 5 6
1 2 3 14 15


Deja un comentario

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