Conjunto de vectores en C++ STL con ejemplos

Conjunto en STL Los conjuntos son un tipo de contenedores asociativos en los que cada elemento tiene que ser único, porque el valor del elemento lo identifica. El valor del elemento no se puede modificar una vez que se agrega al conjunto, aunque es posible eliminar y agregar el valor modificado de ese elemento.

Vector en STL Vector es lo mismo que las arrays dinámicas con la capacidad de cambiar su tamaño automáticamente cuando se inserta o elimina un elemento, y el contenedor maneja automáticamente su almacenamiento. Los elementos vectoriales se colocan en almacenamiento contiguo para que se pueda acceder a ellos y recorrerlos mediante iteradores.

Conjunto de vectores en STL: Conjunto de vectores puede ser muy eficiente en el diseño de estructuras de datos complejas.

Sintaxis:

set<vector<datatype>> set_of_vector;

Por ejemplo : Considere un problema simple donde tenemos que imprimir todos los vectores únicos.

// C++ program to demonstrate
// use of set for vectors
  
#include <bits/stdc++.h>
using namespace std;
  
set<vector<int> > set_of_vectors;
  
// Print elements of Vector
void Print_Vector(vector<int> Vec)
{
    for (int i = 0; i < Vec.size(); i++) {
        cout << Vec[i] << " ";
    }
    cout << endl;
    return;
}
  
// Driver code
int main()
{
    // Initializing some vectors
    vector<int> data_1{ 10, 20, 30, 40 };
    vector<int> data_2{ 5, 10, 15 };
    vector<int> data_3{ 1, 3, 5, 7, 9, 11, 13 };
    vector<int> data_4{ 5, 10, 15 };
    vector<int> data_5{ 10, 20, 30, 40 };
  
    // Inserting vectors into set
    set_of_vectors.insert(data_1);
    set_of_vectors.insert(data_2);
    set_of_vectors.insert(data_3);
    set_of_vectors.insert(data_4);
    set_of_vectors.insert(data_5);
  
    // printing all the unique vectors in set
    cout << "Set of Vectors: \n";
    for (auto it = set_of_vectors.begin();
         it != set_of_vectors.end();
         it++) {
  
        Print_Vector(*it);
    }
  
    return 0;
}
Producción:

Set of Vectors: 
1 3 5 7 9 11 13 
5 10 15 
10 20 30 40

Publicación traducida automáticamente

Artículo escrito por harshit23 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 *