Junior — Middle
Кадом усули ҷустуҷӯи унсур самараноктар аст: гузаштан аз рӯи массив ё дастрасӣ бо калид дар луғат?
sobes.tech AI
Ҷавоб аз AI
Ҷустуҷӯи калидӣ дар луғат ҳамчун роҳи самараноки бештар барои ёфтани унсур дар муқоиса бо гузаштан аз рӯи массив ҳисобида мешавад.
Сабабҳо:
- Луғат дар асоси таблиғи ҳешӣ амалӣ шудааст, ки вақти дастрасии миёна O(1) медиҳад.
- Гузаштан дар массив (ҷустуҷӯи хаттӣ) талаб мекунад, ки ҳар унсурро санҷад, бо вақти ҷустуҷӯ O(n).
Масалан дар Swift:
let array = [1, 2, 3, 4, 5]
let dictionary = [1: "як", 2: "ду", 3: "се"]
// Ҷустуҷӯ дар массив
if array.contains(3) {
print("Ёфт шуд")
}
// Ҷустуҷӯ бо калид дар луғат
if let value = dictionary[3] {
print("Ёфт шуд: \(value)")
}
Агар шумо бисёр ба ҷустуҷӯи унсурҳо бо калид ниёз дошта бошед, истифодаи луғат беҳтар аст.