【leetcode 简单】 第八十六题 有效的完全平方数

给定一个正整数 num,编写一个函数,如果 num 是一个完全平方数,则返回 True,否则返回 False。

注意:不要使用任何内置的库函数,如  sqrt

示例 1:

输入: 16

输出: True

 

示例 2:

输入: 14

输出: False

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

 

posted @ 2018-08-25 01:45  丁壮  阅读(451)  评论(2编辑  收藏  举报