public static int binarySearch(int[] args, int i, int startPos, int endPos) {
if(args==null || startPos>endPos)
return -1;
int midPos = (startPos+endPos) / 2;
if(i==args[midPos]) {
return midPos;
} else if(i<args[midPos]) {
return binarySearch(args, i, startPos, midPos - 1);
} else {
return binarySearch(args, i, midPos + 1, endPos);
}
} |