博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【leetcode】69. Sqrt(x) 整数开方计算最合适的小的数
阅读量:5770 次
发布时间:2019-06-18

本文共 531 字,大约阅读时间需要 1 分钟。

1. 题目

Implement int sqrt(int x).

Compute and return the square root of x.

注:对于5,6,7,8等都返回2.

2. 思路

用牛顿开方法计算。

原理:

3. 代码

class Solution {public:    // 牛顿迭代法 X[n+1] = 1/2 * (X[n] + a/X[n]),  a is x^2    // 单纯的整数开方数直接二分迭代    int mySqrt(int x) {        if (x == 0) return 0;        int y = x/2;        while (true) {            y = max(y, 1);            long long k1 = 1L * y * y;            long long k2 = 1L * (y+1)*(y+1);            if (k1 <= x && k2 > x) { return y; }            y = (y + x / y) / 2;        }        return y;    }};

转载地址:http://rbsux.baihongyu.com/

你可能感兴趣的文章
python2和python3同安装在Windows上,切换问题
查看>>
php加速工具xcache的安装与使用(基于LNMP环境)
查看>>
android超链接
查看>>
redhat tomcat
查看>>
统计数据库大小
查看>>
IO流的学习--文件夹下文件的复制
查看>>
第十六章:脚本化HTTP
查看>>
EXCEL表中如何让数值变成万元或亿元
查看>>
Cisco PIX防火墙的安装流程
查看>>
配置系列:ssm中applicationContext-mybatis.xml的简单配置
查看>>
mysql或者mariadb备份脚本
查看>>
extundelete恢复文件
查看>>
电池温度检测原理和示例代码
查看>>
Linux服务器性能评估与优化、监控利器---dstat应用
查看>>
hdu 2842 Chinese Rings 矩阵快速幂
查看>>
Powershell进阶学习(4) Powershell强大的利器“管道”
查看>>
关于GNU GPL
查看>>
request.getServletPath()和request.getPathInfo()用法
查看>>
nginx在响应request header时候带下划线的需要开启的选项
查看>>
Linux下DHCP服务器配置
查看>>