Junior — Middle
Czy możesz podać przykłady struktur danych zapewniających szybki dostęp do elementu w czasie stałym?
sobes.tech AI
Odpowiedź od AI
Struktury danych zapewniające dostęp do elementu w czasie stałym (O(1)) obejmują:
- Tablice mieszające (HashMap, HashSet) — dostęp po kluczu odbywa się w czasie amortyzowanym stałym.
- Tablice (Array) — dostęp po indeksie odbywa się w czasie stałym.
Przykład w Kotlinie dla HashMap:
val map = hashMapOf("key1" to "value1", "key2" to "value2")
val value = map["key1"] // dostęp w O(1)
Ważne jest, aby pamiętać, że w najgorszym przypadku (np. kolizje w tablicy mieszającej) czas może się pogorszyć, ale średnio dostęp jest uważany za stały.