Junior — Middle
Podes dar exemplos de estruturas de dados que proporcionem acesso rápido a um elemento em tempo constante?
sobes.tech IA
Resposta da IA
As estruturas de dados que garantem acesso a um elemento em tempo constante (O(1)) incluem:
- Tabelas de dispersão (HashMap, HashSet) — o acesso por chave ocorre em tempo amortizado constante.
- Arrays (Array) — o acesso por índice é realizado em tempo constante.
Exemplo em Kotlin para HashMap:
val map = hashMapOf("key1" to "value1", "key2" to "value2")
val value = map["key1"] // acesso em O(1)
É importante lembrar que, no pior caso (por exemplo, colisões na tabela de dispersão), o tempo pode piorar, mas em média, o acesso é considerado constante.