zoukankan      html  css  js  c++  java
  • 367. 有效的完全平方数

    给定一个正整数 num,编写一个函数,如果 num 是一个完全平方数,则返回 True,否则返回 False。
    说明:不要使用任何内置的库函数,如  sqrt。
    示例 1:
    输入:16
    输出:True
    示例 2:
    输入:14
    输出:False
    思路:二分查找,右边界初始为num/2。
     1 bool isPerfectSquare(int num) 
     2 {
     3         int BinNum = num/2;
     4         
     5         int left = 0, right = BinNum;
     6         long long mid = (left + right) >> 1;
     7         if(num == 1)
     8         return true;
     9         if(num == 0)
    10         return false;
    11         while(left <= right)
    12         {
    13             if(mid * mid == num)
    14             {
    15                 return true;
    16             }
    17             else if(mid * mid > num)
    18             {
    19                 right = mid-1;
    20                 mid = (left + right) >> 1;
    21             }
    22             else
    23             {
    24                 left = mid+1;
    25                 mid = (left + right) >> 1;
    26             }
    27         }
    28 
    29         return false;
    30 }
     
  • 相关阅读:
    servlet+jsp结合完成加法运算
    Servlet入门
    java之二叉树算法
    Session
    cookie
    jsp之jstl
    《HDAO》
    《Zoom An Image With Different Interpolation Types》
    《SSAO》
    《debug unreal engine code》
  • 原文地址:https://www.cnblogs.com/ZhengLijie/p/12850740.html
Copyright © 2011-2022 走看看