Sobes.tech
Junior — Middle

Koji način pretraživanja elementa se smatra efikasnijim: prolazak kroz niz ili pristup putem ključa u rečniku?

sobes.tech АИ

Одговор од АИ

Pretraživanje po ključevi u rečniku smatra se efikasnijim načinom pronalaženja elementa u poređenju sa prolaskom kroz niz.

Razlozi:

  • Rečnik je implementiran na osnovu hash tabele, što obezbeđuje prosečno vreme pristupa O(1).
  • Prolazak kroz niz (linearno pretraživanje) zahteva proveru svakog elementa, sa vremenom pretraživanja O(n).

Primer u Swift:

let array = [1, 2, 3, 4, 5]
let dictionary = [1: "jedan", 2: "dva", 3: "tri"]

// Pretraživanje u nizu
if array.contains(3) {
    print("Pronađeno")
}

// Pretraživanje po ključevi u rečniku
if let value = dictionary[3] {
    print("Pronađeno: \(value)")
}

Ako često morate da tražite elemente po ključevi, bolje je koristiti rečnik.