Skip to content

Latest commit

 

History

History
23 lines (22 loc) · 470 Bytes

binary-search.md

File metadata and controls

23 lines (22 loc) · 470 Bytes
/**
 * @param {number[]} nums
 * @param {number} target
 * @return {number}
 */
var search = function(nums, target) {
  let left = 0;
  let right = nums.length - 1;

  while(left <= right) {
    let mid = Math.floor((right + left) / 2);
    if (nums[mid] === target) {
      return mid
    } else if(nums[mid] < target) {
      left = mid + 1;
    } else if (nums[mid] > target) {
      right = mid - 1;
    }
  }
  return left <= right ? left : -1;
};