vector::begin() y vector::end() en C++ STL

Los vectores son 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.

vector::comenzar()

La función begin() se usa para devolver un iterador que apunta al primer elemento del contenedor de vectores. La función begin() devuelve un iterador bidireccional al primer elemento del contenedor.

Sintaxis: 

vectorname.begin()

Parameters: No parameters are passed.

Return Type: 
This function returns a bidirectional
iterator pointing to the first element.

Ejemplos:  

Input  : myvector{1, 2, 3, 4, 5};
         myvector.begin();
Output : returns an iterator to the element 1

Input  : myvector{"This", "is", "Geeksforgeeks"};
         myvector.begin();
Output : returns an iterator to the element This

Errores y excepciones

  • Tiene una garantía de tiro sin excepción. 
  • Muestra error cuando se pasa un parámetro. 

CPP

// INTEGER VECTOR EXAMPLE
// CPP program to illustrate
// Implementation of begin() function
#include <iostream>
#include <vector>
using namespace std;
 
int main()
{
    // declaration of vector container
    vector<int> myvector{ 1, 2, 3, 4, 5 };
 
    // using begin() to print vector
    for (auto it = myvector.begin();
         it != myvector.end(); ++it)
        cout << ' ' << *it;
    return 0;
}

Producción: 

1 2 3 4 5

CPP

// STRING VECTOR EXAMPLE
// CPP program to illustrate
// Implementation of begin() function
#include <iostream>
#include <string>
#include <vector>
using namespace std;
 
int main()
{
    // declaration of vector container
    vector<string> myvector{ "This", "is",
                             "Geeksforgeeks" };
 
    // using begin() to print vector
    for (auto it = myvector.begin();
         it != myvector.end(); ++it)
        cout << ' ' << *it;
    return 0;
}

Producción: 

This is Geeksforgeeks

Complejidad de tiempo: O(1)

vector::fin()

La función end() se usa para devolver un iterador que apunta al lado del último elemento del contenedor de vectores. La función end() devuelve un iterador bidireccional .

Sintaxis: 

vectorname.end()

Parameters :
No parameters are passed.

Return Type:
This function returns a bidirectional
iterator pointing to next to last element.

Ejemplos:  

Input  : myvector{1, 2, 3, 4, 5};
         myvector.end();
Output : returns an iterator after 5

Input  : myvector{"computer", "science", "portal"};
         myvector.end();
Output : returns an iterator afterportal

Errores y excepciones

  1. Tiene una garantía de tiro sin excepción. 
  2. Muestra error cuando se pasa un parámetro.

CPP

// INTEGER VECTOR EXAMPLE
// CPP program to illustrate
// Implementation of end() function
#include <iostream>
#include <vector>
using namespace std;
 
int main()
{
    // declaration of vector container
    vector<int> myvector{ 1, 2, 3, 4, 5 };
 
    // using end() to print vector
    for (auto it = myvector.begin();
         it != myvector.end(); ++it)
        cout << ' ' << *it;
    return 0;
}

Producción: 

1 2 3 4 5

CPP

// STRING VECTOR EXAMPLE
// CPP program to illustrate
// Implementation of end() function
#include <iostream>
#include <string>
#include <vector>
using namespace std;
 
int main()
{
    // declaration of vector container
    vector<string> myvector{ "computer", "science",
                             "portal" };
 
    // using end() to print vector
    for (auto it = myvector.begin(); it != myvector.end();
         ++it)
        cout << ' ' << *it;
    return 0;
}

Producción: 

computer science portal

Complejidad de tiempo: O(1) 

Veamos las diferencias en forma tabular es la siguiente:

vector::comenzar() vector::fin()
Se utiliza para devolver un iterador que apunta al primer elemento del vector. Se utiliza para devolver un iterador que se refiere al elemento pasado el final en el contenedor de vectores.

Su sintaxis es -:

iterador begin();

Su sintaxis es -:

final del iterador();

No toma ningún parámetro. No toma ningún parámetro.
Su complejidad es constante. Su complejidad es constante.
Su validez de iterador no cambia. Su validez de iterador no cambia.

Publicación traducida automáticamente

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