Búsqueda en map en C++
std::map mantiene las claves ordenadas y da tres entradas: el subíndice, contains y find.
#include <map>
#include <string>
int ages_demo() {
std::map<std::string, int> ages = {{"ada", 36}, {"alan", 41}};
ages["grace"] = 85; // subscript inserts the key
if (ages.contains("alan")) {
ages.erase("alan");
}
auto it = ages.find("ada");
return it != ages.end() ? it->second : 0;
}
Cómo funciona
- Pares entre llaves siembran el map;
ages["grace"] = 85inserta una clave que no estaba. - El
containsde C++20 hace la pregunta de sí o no sin crear nada. finddevuelve un iterador:it->secondes el valor,end()significa que la clave no está.
Palabras clave y builtins usados aquí
autoifintreturn
El intento, en números
- Líneas
- 12
- Caracteres a escribir
- 300
- Tokens
- 105
- Ritmo de tres estrellas
- 70 tpm
Al ritmo de tres estrellas de 70 tokens por minuto, este intento toma unos 90 segundos.
Paso 2 de 3 en Contenedores; paso 8 de 27 en Fundamentos del lenguaje.