Leetcode 374.猜数字大小
Time: 20190909
Type: Easy
题目描述
我们正在玩一个猜数字游戏。 游戏规则如下:
我从 1 到 n 选择一个数字。 你需要猜我选择了哪个数字。
每次你猜错了,我会告诉你这个数字是大了还是小了。
你调用一个预先定义好的接口 guess(int num),它会返回 3 个可能的结果(-1,1 或 0):
-1 : 我的数字比较小
1 : 我的数字比较大
0 : 恭喜!你猜对了!
示例 :
输入: n = 10, pick = 6
输出: 6
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/guess-number-higher-or-lower
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
思路
最基础,原版的二分搜索问题。
采用相邻时退出的策略。
代码
# The guess API is already defined for you.
# @param num, your guess
# @return -1 if my number is lower, 1 if my number is higher, otherwise return 0
# def guess(num):class Solution(object):def guessNumber(self, n):""":type n: int:rtype: int"""start, end = 1, nwhile start + 1 < end: # 尤其注意不要写成了start + 1 < n....mid = start + (end - start) // 2# print(mid)if guess(mid) == -1: # 要猜的数字需要更小end = midelif guess(mid) == 1: # 要猜的数字需要更大start = midelse: # end = mid # 或start = mid也可以,直接此时返回也可以return midif guess(start) == 0:return startif guess(end) == 0:return end
END.
Leetcode 374.猜数字大小相关推荐
- [Golang]力扣Leetcode - 374. 猜数字大小(二分查找)
[Golang]力扣Leetcode - 374. 猜数字大小(二分查找) 题目:猜数字游戏的规则如下: 每轮游戏,我都会从 1 到 n 随机选择一个数字. 请你猜选出的是哪个数字. 如果你猜错了,我 ...
- LeetCode:374. 猜数字大小
374. 猜数字大小 猜数字游戏的规则如下: 每轮游戏,我都会从 1 到 n 随机选择一个数字. 请你猜选出的是哪个数字. 如果你猜错了,我会告诉你,你猜测的数字比我选出的数字是大了还是小了. 你可以 ...
- Java实现 LeetCode 374 猜数字大小
374. 猜数字大小 我们正在玩一个猜数字游戏. 游戏规则如下: 我从 1 到 n 选择一个数字. 你需要猜我选择了哪个数字. 每次你猜错了,我会告诉你这个数字是大了还是小了. 你调用一个预先定义好的 ...
- Java实现 LeetCode 374 猜数字大小 II
375. 猜数字大小 II 我们正在玩一个猜数游戏,游戏规则如下: 我从 1 到 n 之间选择一个数字,你来猜我选了哪个数字. 每次你猜错了,我都会告诉你,我选的数字比你的大了或者小了. 然而,当你猜 ...
- LeetCode 374. 猜数字大小(二分查找)
1. 题目 我们正在玩一个猜数字游戏. 游戏规则如下: 我从 1 到 n 选择一个数字. 你需要猜我选择了哪个数字. 每次你猜错了,我会告诉你这个数字是大了还是小了. 你调用一个预先定义好的接口 gu ...
- LeetCode-二分查找-374. 猜数字大小
374. 猜数字大小 思路:二分法 /** * Forward declaration of guess API.* @param num your guess* @return -1 if num ...
- 374. 猜数字大小
#374. 猜数字大小 难度:简单 考察:二分查找 题目描述 解题思路 题目有点说的不清楚,总之: guess返回-1,如果猜的数字比实际选择的数字大 1,如果猜的数字比实际选择的大 1.二分递归 p ...
- LeetCode题解:374.猜数字大小
猜数字大小 一.LeetCode题解 瞧一瞧(求star!) LeetCode题解Javascript版本:Gitbook版本传送门 LeetCode题解Javascript版本:CSDN传送门 前端 ...
- 【LeetCode刷题】374. 猜数字大小
猜数字游戏的规则如下: 每轮游戏,我都会从 1 到 n 随机选择一个数字. 请你猜选出的是哪个数字. 如果你猜错了,我会告诉你,你猜测的数字比我选出的数字是大了还是小了. 你可以通过调用一个预先定义好 ...
最新文章
- Tengine AIFramework框架
- 社交媒体如何破坏了你的生活? | 大咖来了
- weblogic java虚拟机_weblogic server 性能及调优-调优 java 虚拟机.doc
- MySQL配置主从同步过程记录
- 红米路由器ac2100怎样设置ipv6_Redmi路由器AC2100开箱:六天线简单直接,功能丰富对玩家友好...
- Windows驱动开发如何入门
- python的repr和str有什么不同_str()和repr()的异同
- 我为什么鼓励大家写作?
- 选择排序的Java代码实现(超详细代码)
- linux设置自动获取ip命令,详解如何设置CentOS 7开机自动获取IP地址
- Java9之后显示已过时newInstance()方法
- 在c语言中的变量分为三种类型,在C语言中的实型变量分为两种类型
- 计算机构成教学反思,计算机教学反思
- 60个英文阅读网站强力推荐
- 地理信息系统(GIS)应用场景步骤
- 第五代计算机语言--YiGo
- 机器视觉——VisionPro应用开发指南
- 指定Jboss的JDK
- 2018 ACM/ICPC 沈阳站 J How Much Memory Your Code Is Using?
- Java基础不使用方法重载缺点
热门文章
- 逻辑回归与线性回归的区别与联系
- LeetCode-9.回文数(大括号+双目运算符使用)
- ubuntu使用VNC实现远程桌面
- mysql如何给text字段添加索引_MySQL 是如何利用索引的
- 使用计算机 发展了人的运算能力,人们对计算的需求有多大?
- mysql 临时表 中文_MySQL 临时表
- sketchup作品_建环学院学生期末作品展第六站计算机辅助设计sketchup作业
- flume java 安装部署_[Hadoop] Flume安装部署与简单使用
- 注册规划师 计算机科学与技术,关于公布2018年度注册城乡规划师考试合格人员名单的通知...
- python filter_Python filter()