博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Sqrt(x)
阅读量:5956 次
发布时间:2019-06-19

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

实现取平方根的方法

输入int型,返回int型

使用二分法查找,慢慢逼近结果;注意防止溢出,直接用乘法的结果去比较

1 package com.rust.cal; 2  3 public class Sqrtx { 4     /** 5      * 二分法查找 6      * @param x-目标值 7      * @return x的int型平方根 8      */ 9     public static int mySqrt(int x) {10         double diff = 0.000001f;11         double start = 0;12         double end = x;13         double mid;14         while(end - start > diff){15             mid = (end + start)/2;16             if (mid * mid == x) {17                 return (int) mid;18             }19             if (mid*mid > x) {20                 end = mid;21             } else{22                 start = mid;23             }24         }25         return (int) end;26     }27     public static void main(String args[]){28         System.out.println(mySqrt(2147483647));29         System.out.println(mySqrt(1));30         System.out.println(mySqrt(0));31     }32 }

 

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

你可能感兴趣的文章
使用xshell远程连接Linux
查看>>
杭电ACM1007
查看>>
faster-RCNN台标检测
查看>>
Unix环境高级编程 centos中配置apue编译环境
查看>>
运算符
查看>>
数据结构之各排序算法
查看>>
网页分帧操作<frameset>,<iframe>标签
查看>>
Vue生产环境部署
查看>>
酒店之王
查看>>
html5判断用户摇晃了手机(转)
查看>>
VS下Qt4.8.4安装
查看>>
Linux df命令
查看>>
redhat6.5 配置使用centos的yum源
查看>>
取得内表的数据数
查看>>
在一个程序中调用另一个程序并且传输数据到选择屏幕执行这个程序
查看>>
“=” “:=” 区别
查看>>
pwnable.kr lotto之write up
查看>>
python之UnittTest模块
查看>>
HDOJ_ACM_Rescue
查看>>
笔记纪录
查看>>