leetcode374. 猜数字大小
我们正在玩一个猜数字游戏。 游戏规则如下:
我从 1 到 n 选择一个数字。 你需要猜我选择了哪个数字。
每次你猜错了,我会告诉你这个数字是大了还是小了。
你调用一个预先定义好的接口 guess(int num),它会返回 3 个可能的结果(-1,1 或 0):
-1 : 我的数字比较小
1 : 我的数字比较大
0 : 恭喜!你猜对了!
示例 :
输入: n = 10, pick = 6
输出: 6
思路:二分
/* The guess API is defined in the parent class GuessGame.@param num, your guess@return -1 if my number is lower, 1 if my number is higher, otherwise return 0int guess(int num); */public class Solution extends GuessGame {public int guessNumber(int n) {int low = 1;int high = n;while (low <= high) {int mid = low + (high - low) / 2;int res = guess(mid);if (res == 0)return mid;else if (res < 0)high = mid - 1;elselow = mid + 1;}return -1;}
}
leetcode374. 猜数字大小相关推荐
- leetcode-374. 猜数字大小刷题笔记(c++)
写在前面 常规.简单题目 二分法高效搜索目标值 题目详情 我们正在玩一个猜数字游戏. 游戏规则如下: 我从 1 到 n 选择一个数字. 你需要猜我选择了哪个数字. 每次你猜错了,我会告诉你这个数字是大 ...
- LeetCode374 猜数字大小 (二分法)
猜数字游戏的规则如下: 每轮游戏,我都会从 1 到 n 随机选择一个数字. 请你猜选出的是哪个数字. 如果你猜错了,我会告诉你,你猜测的数字比我选出的数字是大了还是小了. 你可以通过调用一个预先定义好 ...
- leetcode374. 猜数字大小(二分法)
猜数字游戏的规则如下: 每轮游戏,系统都会从 1 到 n 随机选择一个数字. 请你猜选出的是哪个数字. 如果你猜错了,系统会告诉你这个数字比系统选出的数字是大了还是小了. 你可以通过调用一个预先定义好 ...
- leetcode374375. 猜数字大小总结
leetcode374. 猜数字大小(二分的坑) 题目:猜数字游戏的规则如下: 每轮游戏,系统都会从 1 到 n 随机选择一个数字. 请你猜选出的是哪个数字. 如果你猜错了,系统会告诉你,你猜测的数字 ...
- LeetCode-二分查找-374. 猜数字大小
374. 猜数字大小 思路:二分法 /** * Forward declaration of guess API.* @param num your guess* @return -1 if num ...
- python 猜数字大小
猜数字大小 猜数字游戏的规则如下:每轮游戏,我都会从 1 到 n 随机选择一个数字. 请你猜选出的是哪个数字. 如果你猜错了,我会告诉你,你猜测的数字比我选出的数字是大了还是小了. 你可以通过调用一个 ...
- 375. 猜数字大小 II
375. 猜数字大小 II 我们正在玩一个猜数游戏,游戏规则如下: 我从 1 到 n 之间选择一个数字. 你来猜我选了哪个数字. 如果你猜到正确的数字,就会 赢得游戏 . 如果你猜错了,那么我会告诉你 ...
- LeetCode刷题实战375:猜数字大小 II
算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...
- 【LeetCode】第374题——猜数字大小(难度:简单)
[LeetCode]第374题--猜数字大小(难度:简单) 题目描述 解题思路 代码详解 注意点 题目描述 猜数字游戏的规则如下: 每轮游戏,我都会从 1 到 n 随机选择一个数字. 请你猜选出的是哪 ...
最新文章
- 'libxml/tree.h' file not found
- 在 win10 环境下,设置自己写的 程序 开机自动 启动的方法
- GVRP和VTP比较
- 网页标准HTML5标准较量正酣
- 欧拉函数和最大公约数的组合应用
- 清华物理化学97—13真题,部分是回忆版
- fslayui和layui_fsLayui介绍(layui插件)
- 操作系统:第五章 磁盘管理 - I/O控制,缓冲区管理
- 逃离迷茫和枯燥,让自己快乐起来
- Spring Batch –用JavaConfig替换XML作业配置
- Hadoop安装(Ubuntu Kylin 14.04)
- Node.js:常用工具、路由
- Redhat AS4上中文乱码问题解决方案
- django中使用第三方包实现定时任务
- Redis数据类型(上)
- oracle中查找某用户执行某张表的操作操作记录
- 火狐安装网页视频下载插件(Video DownloadHelper)
- Cadence之双击(DSN/brd)文件打开变新建文件的解决方法
- 非常哇塞的 SpringBoot性能优化长文!
- OpenStack创建实例提示失败的具体原因如下: created even after we waited 191 seconds or 61 attempts
热门文章
- 前驱和后驱什么意思_为什么只有豪车才敢用后驱
- WinCE的I2C驱动程序设计
- mysql主从同步表结构_mysql主从同步的结构模式
- mysql 交换工资_LeetCode:627.交换工资
- 串口输出5v电压_为什么RS485比串口速度快距离远?--谈单端信号与差分信号之差异...
- php mysql 实现原理_php+mysql分页原理实现
- python解释型语言的区别_什么是解释型语言?
- Sharepoint学习笔记—ECM系列--4 根据位置设置的默认元数据值(Location-Based Metadata Defaults)
- c#中的BeginInvoke和EndEndInvoke 摘要
- 让SharePoint站点输出详细错误信息[转]