Junior — Middle
Melyik elem keresési módszer tekinthető hatékonyabbnak: tömb átvizsgálása vagy kulcs szerinti hozzáférés a szótárban?
sobes.tech MI
Válasz az MI-től
A kulcs szerinti keresés a szótárban hatékonyabb módszer az elem keresésére, mint egy tömb átfésülése.
Indokok:
- A szótár egy hash-táblán alapul, ami átlagosan O(1) hozzáférési időt biztosít.
- A tömb átfésülése (lineáris keresés) minden elemet ellenőriz, így a keresési idő O(n).
Példa Swift-ben:
let array = [1, 2, 3, 4, 5]
let dictionary = [1: "egy", 2: "kettő", 3: "három"]
// Keresés tömbben
if array.contains(3) {
print("Megtalálva")
}
// Keresés kulcs szerint a szótárban
if let value = dictionary[3] {
print("Megtalálva: \(value)")
}
Ezért, ha gyakran kell kulcs szerint keresni elemeket, jobb szótárat használni.