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