Junior — Middle
Aprašykite pavyzdį algoritmo, naudojamo elemento paieškai duomenų struktūroje
sobes.tech AI
Atsakymas iš AI
Vienas iš pagrindinių duomenų struktūros paieškos algoritmų yra dvejetainė paieška, kuri taikoma surūšiuotiems masyvams. Ji veikia padalijant masyvą į dvi dalis ir lyginant ieškomą vertę su viduriniu elementu.
Pavyzdys Swift kalba:
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
}
let numbers = [1, 3, 5, 7, 9, 11]
if let index = binarySearch(numbers, target: 7) {
print("Elementas rastas pozicijoje \(index)")
} else {
print("Elementas nerastas")
}