題目:原題鏈接(簡單)
解法 | 時間複雜度 | 空間複雜度 | 執行用時 |
---|---|---|---|
Ans 1 (Python) | O(logn) | O(1) | 36ms (84.82%) |
LeetCode的Python執行用時隨緣,只要時間複雜度沒有明顯差異,執行用時一般都在同一個量級,僅作參考意義。
解法一(二分查找):
def guessNumber(self, n: int) -> int:
s = 0
while True:
m = (s + n) // 2
ans = guess(m)
if ans == -1:
n = m - 1
elif ans == 1:
s = m + 1
else:
return m