Java | Leetcode Java题解之第374题猜数字大小

题目:

题解:

java 复制代码
public class Solution extends GuessGame {
    public int guessNumber(int n) {
        int left = 1, right = n;
        while (left < right) { // 循环直至区间左右端点相同
            int mid = left + (right - left) / 2; // 防止计算时溢出
            if (guess(mid) <= 0) {
                right = mid; // 答案在区间 [left, mid] 中
            } else {
                left = mid + 1; // 答案在区间 [mid+1, right] 中
            }
        }
        // 此时有 left == right,区间缩为一个点,即为答案
        return left;
    }
}
相关推荐
金銀銅鐵26 分钟前
[Java] 展示增删元素时 LinkedList 的内部变化
java·后端·ai编程
布吉岛的石头1 小时前
Java 程序员第 50 阶段3:数据工程:预训练语料清洗与去重
java·开发语言·人工智能·深度学习·transformer
大文说跨境1 小时前
防关联浏览器的指纹覆盖到什么程度:六类参数的实测与自检方法
java·指纹浏览器·tiktok运营
Carol06302 小时前
上肢及肩肘关节
java·服务器·数据库
yliucherish2 小时前
Log4Shell 复现实录:我读 OpenJDK 源码,发现两道防线的默认值竟然相反
java
维拉德2 小时前
Java新人第一次接打标需求:从抓包找接口到客户端展示
java
luobobo8962 小时前
支付回调验签连续失败三天,最后发现是网关的时间戳单位问题
java
BBmmo2 小时前
Java InputStream.read() 为什么返回 int?
java
Nuanyt2 小时前
LeetCode Hot100 刷题笔记 · 普通数组专题
java·笔记·算法·leetcode
cfm_29144 小时前
Leaf-segment号段模式
java