1. 程式人生 > >leetcode367:有效的完全平方數

leetcode367:有效的完全平方數

思想:

1.定義變數l和h,存放中間變數

2.將l加h整除2等於mid,然後算出mid的平方t,最後比較t和num的大小。

3.若t<num,l等於mid+1;若t>num,h等於mid-1;若t=num,返回True

4.直到迴圈結束,返回False

class Solution:
    def isPerfectSquare(self, num):
        """
        :type num: int
        :rtype: bool
        """
        l=1
        h=num
        while l<=h:
            mid=(l+h)//2
            t=mid**2
            if t<num:
                l=mid+1
            elif t>num:
                h=mid-1
            else:
                return True
        return False