Junior — Middle
Ktorá metóda vyhľadávania prvku je považovaná za efektívnejšiu: prechádzanie po poli alebo prístup cez kľúč v slovníku?
sobes.tech AI
Odpoveď od AI
Vyhľadávanie podľa kľúča v slovníku sa považuje za efektívnejší spôsob vyhľadávania prvku v porovnaní s prechádzaním poľa.
Dôvody:
- Slovník je implementovaný na základe hash tabuľky, čo zabezpečuje priemerný čas prístupu O(1).
- Prechádzanie poľa (lineárne vyhľadávanie) vyžaduje kontrolu každého prvku, s časom vyhľadávania O(n).
Príklad v Swift:
let array = [1, 2, 3, 4, 5]
let dictionary = [1: "jeden", 2: "dva", 3: "tri"]
// Vyhľadávanie v poli
if array.contains(3) {
print("Nájdené")
}
// Vyhľadávanie podľa kľúča v slovníku
if let value = dictionary[3] {
print("Nájdené: \(value)")
}
Ak často potrebujete vyhľadávať prvky podľa kľúča, je lepšie použiť slovník.