Sobes.tech
Junior — Middle

Qual é a característica da velocidade de busca de elementos na estrutura de dados Dictionary?

sobes.tech IA

Resposta da IA

Na estrutura de dados Dictionary (por exemplo, em C#), a busca de um elemento por chave geralmente tem uma complexidade amortizada de O(1), ou seja, muito rápida e praticamente constante no tempo.

Isto é alcançado através do uso de uma tabela de hash, onde a chave é transformada num código hash, que permite encontrar rapidamente o índice no array.

No entanto, no pior caso (por exemplo, com muitas colisões), o tempo de busca pode degradar-se para O(n), onde n é o número de elementos, mas tais situações são raras com uma boa distribuição da função hash.

Exemplo de busca em Dictionary em C#:

var dict = new Dictionary<string, int>();
dict["apple"] = 5;
int value = dict["apple"]; // Busca em O(1)