Binary search

int main() {
int A[] = {2,4,6,8,10,11};
int x = 4;
int n = 6;
int index = binarySearch(A,n,x);
if(index == -1)
{
  printf("%d is not found at index %d",x,index);
}
else {
  printf("%d is found at index %d",x,index);
}
  return 0; 
}
int binarySearch(int A[],int n,int x){
  int start = 0, end = n-1;
  while(start <= end){
    int mid = (start + end)/2;
    if(x == A[mid]){
      return mid;
    }
    else if(x < A[mid]){
      end = mid-1;
    }
    else{
      start = mid+1;
    }
  }
  return -1;
}

Comments

Popular posts from this blog

Finding the second largest in an array