[LeetCode] 374. 猜数字大小

考察二分的一种写法,注意数据的溢出

public class Solution extends GuessGame {
    public int guessNumber(int n) {
        int left = 1;
        int right = n;
        while (left <= right) {
            int mid = left + ((right - left) >> 1);
            int ret = guess(mid);
            if (ret == 0) return mid;
            if (ret == -1) {
                right = mid - 1;
            } else {
                left = mid + 1;
            }
        }

        return -1;
    }
}
posted @ 2021-06-14 23:55  ACBingo  阅读(22)  评论(0编辑  收藏  举报