typestar

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

  1. Pares entre llaves siembran el map; ages["grace"] = 85 inserta una clave que no estaba.
  2. El contains de C++20 hace la pregunta de sí o no sin crear nada.
  3. find devuelve un iterador: it->second es el valor, end() significa que la clave no está.

Palabras clave y builtins usados aquí

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.

Escribe este fragmento

Paso 2 de 3 en Contenedores; paso 8 de 27 en Fundamentos del lenguaje.

← Anterior Siguiente →