Junior — Middle
Kuidas määratakse otsingu tõhusus võtme järgi sõnastiku andmestruktuuris?
sobes.tech AI
Vastus AI-lt
Andmestruktuuris sõnastik (Dictionary) elementide otsimine võtme järgi on tavaliselt rakendatud kasutades hajutustabelit, mis tagab keskmise ajakompleksuse O(1) otsingutegevusele. See tähendab, et sõltumata sõnastiku suurusest, pääs võtmelt elemendile toimub peaaegu hetkega.
Kuid tõhusus sõltub hash-funktsiooni kvaliteedist ja kokkupõrgete arvust. Kui kokkupõrkeid on palju, võib otsingu aeg halveneda kuni O(n) halvimatel juhtudel.
Swift näide:
let dict = ["apple": 1, "banana": 2, "orange": 3]
if let value = dict["banana"] {
print("Väärtus: \(value)") // Kuvab: Väärtus: 2
}
Siin on otsing võtme "banana" järgi väga kiire, tänu sõnastiku sisemisele rakendusele.