Junior — Middle
Оё метавонед ташкилоти дохилии луғат дар барномасозӣ ва коркардашро шарҳ диҳед?
sobes.tech AI
Ҷавоб аз AI
Луғат (dictionary) — ин структураи маълумотест, ки ҷуфтҳои калид-ҳолро нигоҳ медорад ва дастрасии зуд ба холҳоро тавассути калидро таъмин мекунад.
Дар iOS (Swift), луғат ҳамчун Dictionary<Key, Value> амалӣ карда мешавад. Дар дохили, луғат одатан ба асоси хештаблица асос ёфтааст:
- Калид бо истифода аз функсияи хеш ба код хеш табдил дода мешавад.
- Код хеш барои муайян кардани ҷойгиршавӣ дар массив (баст) истифода мешавад.
- Агар дар баст аллакай элементҳо бошанд (ҷанҷол), усули ҳал кардани ҷанҷол (масалан, занҷирбандӣ ё сурхтозӣ) истифода мешавад.
Ин ба миёнаравии мураккабии амалиётҳои ворид кардан, тоза кардан ва ҷустуҷӯ дар ҳоле, ки тақрибан O(1) аст, кӯмак мекунад.
Масалан, истифодаи луғат дар Swift:
var dict: [String: Int] = [:]
dict["apple"] = 3
dict["banana"] = 5
if let count = dict["apple"] {
print("Миқдори себҳо: \(count)")
}
Бинобар ин, луғат имкон медиҳад, ки маълумотҳоро самаранок нигоҳ дошта ва ба онҳо тавассути калид дастрасӣ пайдо кард.