How to implement binary search in JavaScript

1 Answer

0 votes
function binary_search(arr, to_find) {
    let left = 0;
    let right = arr.length - 1;
    let mid = 0;
    
    while (left <= right) { 
        mid = Math.ceil(left + (right - left) / 2); 
     
        if (arr[mid] === to_find) 
            return mid; 
     
        if (arr[mid] < to_find) 
            left = mid + 1; 
        else
            right = mid - 1; 
    } 
     
    return -1; 
}  
 
 
let arr = new Array(2, 3, 6, 7, 12, 13, 17, 19, 21); 
let to_find = 13; 
       
let i = binary_search(arr, to_find); 
       
(i === -1) ? console.log("not found") : console.log("Found at index: " + i); 


   
/*
run:
    
Found at index: 5
       
*/

 



answered Aug 5, 2019 by avibootz
edited Mar 23, 2025 by avibootz
...