Junior — Middle
Puoi fare esempi di strutture dati che garantiscono un accesso rapido a un elemento in tempo costante?
sobes.tech AI
Risposta dell'AI
Le strutture dati che garantiscono l'accesso a un elemento in tempo costante (O(1)) includono:
- Tabelle hash (HashMap, HashSet) — l'accesso tramite chiave avviene in tempo ammortizzato costante.
- Array (Array) — l'accesso tramite indice avviene in tempo costante.
Esempio in Kotlin per HashMap:
val map = hashMapOf("key1" to "value1", "key2" to "value2")
val value = map["key1"] // accesso in O(1)
È importante ricordare che nel peggiore dei casi (ad esempio, in collisioni nella tabella hash), il tempo può peggiorare, ma in media l'accesso è considerato costante.