日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

LeetCode简单题之猜数字大小

發(fā)布時(shí)間:2023/11/28 生活经验 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 LeetCode简单题之猜数字大小 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

題目

猜數(shù)字游戲的規(guī)則如下:
每輪游戲,我都會(huì)從 1 到 n 隨機(jī)選擇一個(gè)數(shù)字。 請(qǐng)你猜選出的是哪個(gè)數(shù)字。
如果你猜錯(cuò)了,我會(huì)告訴你,你猜測(cè)的數(shù)字比我選出的數(shù)字是大了還是小了。
你可以通過調(diào)用一個(gè)預(yù)先定義好的接口 int guess(int num) 來獲取猜測(cè)結(jié)果,返回值一共有 3 種可能的情況(-1,1 或 0):
-1:我選出的數(shù)字比你猜的數(shù)字小 pick < num
1:我選出的數(shù)字比你猜的數(shù)字大 pick > num
0:我選出的數(shù)字和你猜的數(shù)字一樣。恭喜!你猜對(duì)了!pick == num
返回我選出的數(shù)字。
示例 1:
輸入:n = 10, pick = 6
輸出:6
示例 2:
輸入:n = 1, pick = 1
輸出:1
示例 3:
輸入:n = 2, pick = 1
輸出:1
示例 4:
輸入:n = 2, pick = 2
輸出:2
提示:
1 <= n <= 2^31 - 1
1 <= pick <= n
來源:力扣(LeetCode)

解題思路

??給定了范圍和判斷條件,我們就能確定猜的數(shù)字是在那個(gè)子集里。給定的范圍天生是一個(gè)有序的序列,所以這個(gè)題本質(zhì)上還是一個(gè)二分查找的題,鑒于此,我們可以采用不識(shí)別相等的二分查找進(jìn)行。

# 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: int) -> int:class Solution:def guessNumber(self, n: int) -> int:low,high=1,nwhile low<high:mid=(low+high)//2if guess(mid)>0:low=mid+1else:high=midreturn low

總結(jié)

以上是生活随笔為你收集整理的LeetCode简单题之猜数字大小的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。