Sobes.tech
Junior — Middle

Kas saak anda näiteid algoritmidest andmestruktuurides elementide otsimiseks?

sobes.tech AI

Vastus AI-lt

Andmetüüpides kasutatakse sageli järgmisi algoritme:

  • Lineaarne otsing (Linear Search) — elementide läbimine üks ühe järel, sobib määramata massiividele.
  • Binaarne otsing (Binary Search) — tõhus sorteeritud massiividele, jagab otsinguala kaheks iga sammu jooksul.
  • Otsing puudes (nt. binaarotsingupuu otsing) — rekursiivne või iteratiivne läbimine elemendi leidmiseks.
  • Otsing hash-tabelites — kiire juurdepääs võtme kaudu hash-funktsiooni abil.

Näide binaarsest otsingust Swiftis:

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
}