Week 5: Algorithm analysis, searching, sorting
int binarySearch(int list[], int size, int target)
{
   int lower = 0, upper = size - 1, mid;
   while (lower <= upper) {
      mid = (upper + lower)/2;
      if (list[mid] > target)
      {
          upper = mid - 1;
      }
      else if (list[mid] < target)
      {
          lower = mid + 1;
      }
      else
      {return mid;}
   }
   return -1;         
}