Sobes.tech
Junior — Middle

Маалыматтар түзүмдөрүндө элементтерди издөө алгоритмдеринин мисалдарын бере аласызбы?

sobes.tech AI

AIден жооп

Маалымат түзүмдөрүндө элементтерди издөө үчүн көбүнчө төмөнкү алгоритмдер колдонулат:

  • Линейдүү издөө (Linear Search) — элементтерди биринин артынан бирин текшерүү, тизмеси түзүлбөгөн массивдер үчүн ылайыктуу.
  • Бинардык издөө (Binary Search) — сорттолгон массивдер үчүн эффективдүү, ар бир кадамда издөө аймагын экиге бөлөт.
  • Ағаштарда издөө (мисалы, бинардык издөө дарагында) — рекурсивдүү же итеративдүү өтүү аркылуу элементти табуу.
  • Хеш таблицаларда издөө — ачкыч аркылуу тез жетүү, хеш-функцияны колдонуу.

Swiftте бинардык издөө мисалы:

func binarySearch(_ array: [Int], target: Int) -> Int? {
    var left = 0
    var right = array.count - 1
    while left <= right {
        let mid = (left + right) / 2
        if array[mid] == target {
            return mid
        } else if array[mid] < target {
            left = mid + 1
        } else {
            right = mid - 1
        }
    }
    return nil
}