解题思路
二分查找
代码
/**
* Forward declaration of guess API.
* @param num your guess
* @return -1 if num is lower than the guess number
* 1 if num is higher than the guess number
* otherwise return 0
* int guess(int num);
*/
public class Solution extends GuessGame {
public int guessNumber(int n) {
int left =0,right = n;
while (left<right){
int mid =left + (right-left)/2;
if (guess(left)==0){
return left;
}
if (guess(right)==0){
return right;
}
if (guess(mid)==0){
return mid;
}
else if (guess(mid)<0){
right=mid-1;
}
else if (guess(mid)>0){
left=mid+1;
}
}
return left;
}
}