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