Sobes.tech
Junior — Middle

Em que situações é preferível usar o container std::unordered_map?

sobes.tech IA

Resposta da IA

std::unordered_map é preferível usar quando a velocidade de acesso aos elementos por chave é importante e a ordem dos elementos não importa. É uma tabela hash que fornece um tempo de acesso amortizado de O(1) em média, ao contrário de std::map, que é implementado como uma árvore balanceada e fornece acesso em O(log n).

Situações para usar std::unordered_map:

  • Quando precisa procurar, inserir ou remover elementos rapidamente por chave.
  • Quando a ordem dos elementos não é importante.
  • Quando as chaves têm uma boa função hash que minimiza colisões.

Exemplo de uso:

#include <unordered_map>
#include <string>
#include <iostream>

int main() {
    std::unordered_map<std::string, int> wordCount;
    wordCount["apple"] = 3;
    wordCount["banana"] = 2;

    std::cout << "apple: " << wordCount["apple"] << std::endl;
    return 0;
}