Sobes.tech
Junior — Middle

Կարող եք տալ տվյալների կառուցվածքների օրինակներ, որոնք ապահովում են արագ մուտք դեպի տարր ժամանակի ընթացքում?

sobes.tech AI

Պատասխան AI-ից

Տվյալների կառուցվածքները, որոնք ապահովում են տարրի մուտք գործելուն մշտական ժամանակում (O(1)), ներառում են՝

  • Հեշ-թերթեր (HashMap, HashSet) — մուտքը բանալիով կատարվում է ամորտիզացված մշտական ժամանակում:
  • Արreyներ (Array) — մուտքը ինդեքսով կատարվում է մշտական ժամանակում:

Օրինակ Kotlin-ով HashMap-ի համար՝

val map = hashMapOf("key1" to "value1", "key2" to "value2")
val value = map["key1"] // O(1) մուտք

Կարևոր է հիշել, որ ամենավատ դեպքերում (օրինակ, բախումների դեպքում հեշ-թերթում) ժամանակը կարող է վատթարանալ, բայց միջինում մուտքը համարվում է մշտական։