Intercambio de subrangos de diferentes contenedores en C++

Un contenedor es un objeto contenedor que contiene una colección de otros objetos. Se implementan como plantillas de clase, lo que permite una gran flexibilidad en los tipos soportados como elementos.

Dados algunos elementos en vector y list , intercambie algunos de sus elementos.

// C++ program to swap subranges from different containers
#include <algorithm>
#include <iostream>
#include <list>
#include <vector>
using namespace std;
  
int main()
{
    vector<int> v =  { -10, -15, -30, 20, 500 };
    list<int> lt = { 10, 50, 30, 100, 50 };
      
    /* swap_ranges() swaps the values starting from the beginning 
       to 3rd last values as per the parameters.
       Hence (-10, -15, -30) are swapped with (10, 50, 30). */
    swap_ranges(v.begin(), v.begin() + 3, lt.begin());
  
    for (int n : v)
        cout << n << ' ';
    cout << '\n';
  
    for (int n : lt)
        cout << n << ' ';
    cout << endl;
}
Producción:

10 50 30 20 500 
-10 -15 -30 100 50

También podemos intercambiar rangos en dos vectores.

// C++ program to swap subranges from different containers
#include <algorithm>
#include <iostream>
#include <vector>
using namespace std;
  
int main()
{
    vector<int> v1 = { -10, -15, -30, 20, 500 };
    vector<int> v2 = { 10, 50, 30, 100, 50 };
      
    /* swap_ranges() swaps the values starting from the beginning 
       to 3rd last values as per the parameters.
       Hence (-10, -15, -30) are swapped with (10, 50, 30). */
    swap_ranges(v1.begin(), v1.begin() + 3, v2.begin());
  
    for (int n : v1)
        cout << n << ' ';
    cout << '\n';
  
    for (int n : v2)
        cout << n << ' ';
    cout << endl;
}
Producción:

10 50 30 20 500 
-10 -15 -30 100 50

Publicación traducida automáticamente

Artículo escrito por aishwarya.27 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 *