Requisito previo: Arrays en C++ , Vector en C++ STL
Una array es una colección de elementos almacenados en ubicaciones de memoria contiguas. Es para almacenar varios artículos del mismo tipo juntos. Esto facilita el acceso a los elementos almacenados en él por la posición de cada elemento.
Los vectores se conocen como 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.
Por lo tanto, una array de vectores es una array bidimensional con un número fijo de filas donde cada fila es un vector de longitud variable. Cada índice de array almacena un vector que se puede recorrer y acceder mediante iteradores .
Sintaxis:
vector <data_type> V[size];
Ejemplo:
vector <int> A[5]; where A is the array of vectors of int of size 5
Inserción: la inserción en una array de vectores se realiza mediante la función push_back() .
Por ejemplo:
for i in [0, n) { A[i].push_back(35) }
El pseudocódigo anterior inserta el elemento 35 en cada índice del vector <int> A[n] .
Recorrido: el recorrido en una array de vectores se realiza mediante iteradores .
Por ejemplo:
for i in [0, n) { for(iterator it = A[i].begin(); it!=A[i].end(); it++) { print(*it) } }
El pseudocódigo anterior atraviesa el vector <int> A[n] en cada índice usando los iteradores iniciales A[i].begin() y el iterador final A[i].end() . Para acceder al elemento que utiliza (*it) , los iteradores son punteros que apuntan a elementos en el vector <int> A[n] .
A continuación se muestra el programa para ilustrar la inserción en la array de vectores.
// C++ program to illustrate // array of vectors #include <iostream> #include <vector> using namespace std; // Declaring array of vectors // globally vector<int> v[5]; // Function for inserting elements // in array of vectors void insertionInArrayOfVectors() { for (int i = 0; i < 5; i++) { // Inserting elements at every // row i using push_back() // function in vector for (int j = i + 1; j < 5; j++) { v[i].push_back(j); } } } // Function to print elements in array // of vectors void printElements() { // Traversing of vectors v to print // elements stored in it for (int i = 0; i < 5; i++) { cout << "Elements at index " << i << ": "; // Displaying element at each column, // begin() is the starting iterator, // end() is the ending iterator for (auto it = v[i].begin(); it != v[i].end(); it++) { // (*it) is used to get the // value at iterator is // pointing cout << *it << ' '; } cout << endl; } } // Function to illustrate array // of vectors void arrayOfVectors() { // Inserting elements in array // of vectors insertionInArrayOfVectors(); // Print elements stored in array // of vectors printElements(); } // Driver code int main() { arrayOfVectors(); return 0; }
Elements at index 0: 1 2 3 4 Elements at index 1: 2 3 4 Elements at index 2: 3 4 Elements at index 3: 4 Elements at index 4:
Publicación traducida automáticamente
Artículo escrito por _boundless_ y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA