Junior — Middle
Milline elementide otsimise meetod peetakse tõhusamaks: massiivi läbimine või juurdepääs võtme kaudu sõnastikus?
sobes.tech AI
Vastus AI-lt
Võtme otsimine sõnastikus peetakse tõhusamaks viisiks leida element võrreldes massiivi läbimisega.
Põhjused:
- Sõnastik on rakendatud hash-tabeli alusel, mis tagab keskmise juurdepääsuaega O(1).
- Massiivi läbimine (lihtne otsing) nõuab iga elemendi kontrollimist, otsingu aeg on O(n).
Näide Swiftis:
let array = [1, 2, 3, 4, 5]
let dictionary = [1: "üks", 2: "kaks", 3: "kolm"]
// Massiivi otsing
if array.contains(3) {
print("Leitud")
}
// Võtme järgi otsing sõnastikus
if let value = dictionary[3] {
print("Leitud: \(value)")
}
Kui peate sageli otsima elemente võtme järgi, on parem kasutada sõnastikku.