Sobes.tech
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.