Junior — Middle
Kuris elementų paieškos būdas laikomas efektyvesniu: masyvo perėjimas ar prieigos per raktą žodyne?
sobes.tech AI
Atsakymas iš AI
Raktas paieška žodyne laikoma efektyvesniu būdu rasti elementą, palyginti su masyvo perėjimu.
Priežastys:
- Žodynas yra įgyvendintas naudojant maišos lentelę, užtikrinančią vidutinį prieigos laiką O(1).
- Masyvo perėjimas (liemuo paieška) reikalauja patikrinti kiekvieną elementą, paieškos laikas yra O(n).
Pavyzdys Swift:
let array = [1, 2, 3, 4, 5]
let dictionary = [1: "vienas", 2: "du", 3: "trys"]
// Masyvo paieška
if array.contains(3) {
print("Rasta")
}
// Rasti pagal raktą žodyne
if let value = dictionary[3] {
print("Rasta: \(value)")
}
Jei dažnai reikia ieškoti elementų pagal raktą, geriau naudoti žodyną.