Junior — Middle
Veri yapılarında öğeleri aramak için algoritma örnekleri verebilir misiniz?
sobes.tech yapay zeka
AI'dan gelen yanıt
Veri yapılarında öğeleri aramak için sıklıkla aşağıdaki algoritmalar kullanılır:
- Doğrusal Arama (Linear Search) — Öğeleri tek tek dolaşmak, sıralanmamış diziler için uygundur.
- İkili Arama (Binary Search) — Sıralanmış diziler için etkilidir, her adımda arama alanını ikiye böler.
- Ağaçlarda Arama (örneğin, ikili arama ağacında arama) — Öğeyi bulmak için özyinelemeli veya yinelemeli dolaşım.
- Hash tablolarında Arama — Anahtar kullanarak hızlı erişim, hash fonksiyonu ile.
Swift'te ikili arama örneği:
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
}