Sobes.tech
Junior — Middle

შეგიძლიათ მიაწოდოთ მონაცემთა სტრუქტურების მაგალითები, რომლებიც უზრუნველყოფენ ელემენტზე სწრაფ წვდომას მუდმივ დროს?

sobes.tech AI

პასუხი AI-სგან

მონაცემთა სტრუქტურები, რომლებიც უზრუნველყოფენ ელემენტზე წვდომას მუდმივ დროში (O(1)), მოიცავს:

  • ჰეშ-ცხრილები (HashMap, HashSet) — წვდომა გასაღებით ხორციელდება ამორტიზირებულად მუდმივ დროში.
  • მასივები (Array) — წვდომა ინდექსით ხორციელდება მუდმივ დროში.

კოტლინში HashMap-ის მაგალითი:

val map = hashMapOf("key1" to "value1", "key2" to "value2")
val value = map["key1"] // O(1) წვდომა

მნიშვნელოვანია გახსოვდეთ, რომ ყველაზე უარესი შემთხვევა (მაგალითად, კოლიზიები ჰეშ-ცხრილში) დრო შეიძლება გაუარესდეს, მაგრამ საშუალოდ წვდომა მიიჩნევა როგორც მუდმივი.