How to implement binary search algorithm in Kotlin

1 Answer

0 votes
fun binarySearch(array: IntArray, element: Int, low: Int, high: Int): Int {
    var low = low
    var high = high
    
    while (low <= high) {
        val mid = low + (high - low) / 2

        if (array[mid] == element)
            return mid

        if (array[mid] < element)
            low = mid + 1
        else
            high = mid - 1
    }

    return -1
}

fun main() {
    val array = intArrayOf(3, 4, 8, 9, 10, 17, 21, 28, 33, 36, 42)
    val numberToFind = 21

    val index = binarySearch(array, numberToFind, 0, array.size - 1)

    if (index == -1)
        println("Not found")
    else
        println("Found at index: $index")
}

 
 
/*
run:

Found at index: 6
 
*/

 



answered Dec 13, 2024 by avibootz
...