leetcode374. 猜数字大小(二分法)
生活随笔
收集整理的這篇文章主要介紹了
leetcode374. 猜数字大小(二分法)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
猜數(shù)字游戲的規(guī)則如下:
每輪游戲,系統(tǒng)都會從 1 到 n 隨機選擇一個數(shù)字。 請你猜選出的是哪個數(shù)字。
如果你猜錯了,系統(tǒng)會告訴你這個數(shù)字比系統(tǒng)選出的數(shù)字是大了還是小了。
你可以通過調(diào)用一個預先定義好的接口 guess(int num) 來獲取猜測結(jié)果,返回值一共有 3 種可能的情況(-1,1 或 0):
-1 : 系統(tǒng)選出的數(shù)字比你猜測的數(shù)字小
1 : 系統(tǒng)選出的數(shù)字比你猜測的數(shù)字大
0 : 恭喜!你猜對了!
示例 :
輸入: n = 10, pick = 6
輸出: 6
代碼
/** * 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 l=1,r=n;while (l<=r)//二分查找結(jié)果{int mid=(r-l)/2+l;if(guess(mid)==0)return mid;else if(guess(mid)>0)l=mid+1;else r=mid-1;}return l;} }總結(jié)
以上是生活随笔為你收集整理的leetcode374. 猜数字大小(二分法)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: leetcode1237. 找出给定方程
- 下一篇: leetcode面试题 10.05. 稀