zoukankan      html  css  js  c++  java
  • X的平方根

    69. x 的平方根

    实现 int sqrt(int x) 函数。

    计算并返回 x 的平方根,其中 是非负整数。

    由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。

    示例 1:

    输入: 4
    输出: 2
    

    示例 2:

    输入: 8
    输出: 2
    说明: 8 的平方根是 2.82842..., 
         由于返回类型是整数,小数部分将被舍去。
    public class T69 {
        public int mySqrt(int x) {
            //二分法
            int left = 1, end = x;
            while (left <= end ) {
                int mid = (end - left) / 2 + left;
                int num = x / mid;
                if (num == mid) {
                    return num;
                } else if (mid < num) {
                    left = mid + 1;
                } else {
                    end = mid - 1;
                }
            }
            return end;
        }
    }

    367. 有效的完全平方数

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

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

    示例 1:

    输入:16
    输出:True

    示例 2:

    输入:14
    输出:False
    public class T367{
        public boolean isPerfectSquare(int num) {
            int left = 1, right = num;
            while (left <= right) {
                int mid = (right - left) / 2 + left;
                int temp = num / mid;
                //加限制条件 5 / 2 = 2,5 % 2 = 1
                if (mid == temp && num % mid != 0) {
                    return true;
                } else if (mid < temp) {
                    left = mid + 1;
                } else {
                    right = mid - 1;
                }
            }
            return false;
        }
    }
    一回生,二回熟
  • 相关阅读:
    欧拉函数
    新博客地址
    socket编程
    文件操作
    python安装扩展”unable to find vcvarsall.bat“的解决办法
    PYTHON以及插件安装
    梯式结构
    PHPSTORM配置
    CSRF攻击
    js的一些奇葩用法
  • 原文地址:https://www.cnblogs.com/zzytxl/p/12521483.html
Copyright © 2011-2022 走看看