二分查找May-9th “Valid Perfect Square (Python3)”
Posted 迪乐阅读
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二分查找May-9th “Valid Perfect Square (Python3)”相关的知识,希望对你有一定的参考价值。
——
sqrt
.
Input: 16
Output: true
Input: 14
Output: false
class Solution:
def isPerfectSquare(self, num: int) -> bool:
lo = 1
hi = num
while num != 0 and lo <= hi:
mid = (lo + hi) // 2
if mid ** 2 == num:
return True
elif mid ** 2 > num:
hi = mid - 1
else:
lo = mid + 1
return False
时间复杂度:O(logN)。
空间复杂度:O(1)。
以上是关于二分查找May-9th “Valid Perfect Square (Python3)”的主要内容,如果未能解决你的问题,请参考以下文章