Sobes.tech
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)")
}

Бинобар ин, луғат имкон медиҳад, ки маълумотҳоро самаранок нигоҳ дошта ва ба онҳо тавассути калид дастрасӣ пайдо кард.