How to implement binary search algorithm in Swift

1 Answer

0 votes
import Foundation

func binarySearch(array: [Int], element: Int, low: Int, high: Int) -> Int {
    var low = low
    var high = high
    
    while low <= high {
        let mid = low + (high - low) / 2
        
        if array[mid] == element {
            return mid
        }
        
        if array[mid] < element {
            low = mid + 1
        } else {
            high = mid - 1
        }
    }
    
    return -1
}

let array = [3, 4, 8, 9, 10, 17, 21, 28, 33, 36, 42]
let numberToFind = 21

let index = binarySearch(array: array, element: numberToFind, low: 0, high: array.count - 1)

if index == -1 {
    print("Not found")
} else {
    print("Found at index: \(index)")
}



/*
run:  
 
Found at index: 6
 
*/

 



answered Dec 13, 2024 by avibootz

Related questions

1 answer 100 views
1 answer 85 views
1 answer 103 views
1 answer 99 views
1 answer 82 views
1 answer 154 views
...