How to implement binary search algorithm in Scala

1 Answer

0 votes
object BinarySearch {
  def binarySearch(array: Array[Int], element: Int, low: Int, high: Int): Int = {
    var lowVar = low
    var highVar = high

    while (lowVar <= highVar) {
      val mid = lowVar + (highVar - lowVar) / 2

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

      if (array(mid) < element)
        lowVar = mid + 1
      else
        highVar = mid - 1
    }

    -1
  }

  def main(args: Array[String]): Unit = {
    val array = Array(3, 4, 8, 9, 10, 17, 21, 28, 33, 36, 42)
    val numberToFind = 21

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

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


 
 
/*
run:
   
Found at index: 6
 
*/

 



answered Dec 13, 2024 by avibootz

Related questions

1 answer 111 views
1 answer 76 views
1 answer 87 views
1 answer 103 views
1 answer 82 views
1 answer 154 views
...