Sobes.tech
Junior — Middle

Ar galite pateikti pavyzdžių duomenų struktūrų, kurios užtikrina greitą prieigą prie elemento pastoviu laiku?

sobes.tech AI

Atsakymas iš AI

Duomenų struktūros, užtikrinančios prieigą prie elemento per pastovų laiką (O(1)), apima:

  • Hash lentelės (HashMap, HashSet) — prieiga per raktą vyksta amortizuotu pastoviu laiku.
  • Masyvai (Array) — prieiga per indeksą vyksta pastoviu laiku.

Pavyzdys Kotlin kalba HashMap:

val map = hashMapOf("key1" to "value1", "key2" to "value2")
val value = map["key1"] // O(1) prieiga

Svarbu atsiminti, kad blogiausiu atveju (pvz., kolizijos hash lentelėje) laikas gali pablogėti, bet vidutiniškai prieiga laikoma pastovia.