C++ | Comprobar si elemento existe en vector

En este post te mostraré cómo saber si determinado elemento existe dentro de un vector en el lenguaje de programación C++ también conocido como CPP. Dicho con otras palabras, vamos a ver si un vector contiene cierto valor.

A diferencia de cuando implementamos una búsqueda secuencial, en este caso vamos a usar la función std::find presente dentro del encabezado algorithm.

Función para saber si elemento está presente en vector

Veamos a continuación la siguiente función que regresa un booleano indicando si el valor existe dentro del vector:

bool existeEnVector(vector<string> v, string busqueda) {
    return find(v.begin(), v.end(), busqueda) != v.end();
}

En este caso usamos la función find. De este modo podemos facilitar la búsqueda como veremos a continuación, pues vamos a comprobarlo con un if simplificado.

Uso de la función

Podemos usar la función así:

if (existeEnVector(nombres, "Luis")) {
    cout << "Sí existe";
} else {
    cout << "No existe";
}

También se puede capturar el resultado, imprimir la variable booleana, etcétera. Al final tenemos true y false.

Poniendo todo junto

El código completo, incluyendo encabezados y ejemplo, queda como se ve a continuación. Declaramos un vector, le agregamos elementos con push_back y finalmente comprobamos si determinado elemento existe.

Todo esto usando C++

#include <iostream>
#include<vector>
#include<algorithm>

using namespace std;

/*

https://parzibyte.me/blog

*/


bool existeEnVector(vector<string> v, string busqueda) {
    return find(v.begin(), v.end(), busqueda) != v.end();
}


int main() {
    vector<string> nombres;
    nombres.push_back("Luis");
    nombres.push_back("Pedro");
    nombres.push_back("José");
    if (existeEnVector(nombres, "Luis")) {
        cout << "Sí existe";
    } else {
        cout << "No existe";
    }
}

También puedes ver más entradas sobre C++.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario

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