Binary Search Rotated Array

by rishul matta

JavaScript

function binarySearch(A, nos) {
	var min, max, mid;
  min = 0;
  max = A.length -1;
  while (min <= max) {
  	mid = Math.floor((max-min)/2) + min;
    if (A[mid] == nos) {
    	return mid;
    }
		if (A[mid] <= A[max]) {
    	if (nos > A[mid] && nos <= A[max]) {
      	min = mid + 1;
      } else {
      	max = mid -1;
      }
    } 
    else {
    	if (nos >= A[min] && nos <= A[mid]) {
      	max = mid - 1;
      } else {
      	min = mid + 1;
      }
    }
  }
  
  return -1;

}

console.log(binarySearch([4,1,2,3], 4))