这不是一个简单的sqrt函数。您应该检查此链接以实现算法:

http://www.koders.com/c/fid7D3C8841ADC384A5F8DE0D081C88331E3909BF3A.aspx

它有while循环以检查收敛

/* Slower but safer algorithm due to Moler and Morrison. Never

produces any intermediate result greater than roughly the

larger of X and Y. Should converge to machine-precision

accuracy in 3 iterations. */

double r = ratio*ratio, t, s, p = abig, q = asmall;

do {

t = 4. + r;

if (t == 4.)

break;

s = r / t;

p += 2. * s * p;

q *= s;

r = (q / p) * (q / p);

} while (1);

编辑(更新于J.M):

Here是原Moler-Morrison纸,here是Dubrulle的一个很好的后续。

java hypot_java – 为什么hypot()函数这么慢?相关推荐

  1. java hypot_Java StrictMath hypot()方法

    Java StrictMath hypot()方法 java.lang.StrictMath.hypot() 方法返回 sqrt(x2 + y2) 没有中间溢或下溢.它包括了一些情况: 如果任一参数为 ...

  2. java hypot_Java StrictMath hypot()用法及代碼示例

    根據基本幾何形狀,斜邊僅是right-angled三角形的最長邊.它是與三角形直角相反的一側.為了找到right-angled三角形的斜邊的長度,應用勾股定理.根據該定理,給定長度為p和b的三角形的兩 ...

  3. java hypot_Java StrictMath hypot()用法及代码示例

    根据基本几何形状,斜边仅是right-angled三角形的最长边.它是与三角形直角相反的一侧.为了找到right-angled三角形的斜边的长度,应用勾股定理.根据该定理,给定长度为p和b的三角形的两 ...

  4. java hypot_Java StrictMath hypot()方法与示例

    StrictMath类hypot()方法hypot()方法在java.lang包中可用. hypot()方法用于返回sqrt(sq(d1)+ sq(d2))的平方根,而不进行任何中间运算,换句话说,它 ...

  5. java hypot_java.lang.StrictMath.hypot()方法实例

    全屏 java.lang.StrictMath.hypot()方法返回 sqrt(x2 + y2) 没有中间溢或下溢.它包括了一些情况:如果任一参数为无穷大,那么结果为正无穷大. 如果任一参数为NaN ...

  6. java hypot_Java Math类静态double hypot(double d1,double d2)与示例

    数学类静态double hypot(double d1,double d2)此方法在java.lang包中可用. 此方法用于返回(square(d1)+ square(d2))的平方根,而无需任何中间 ...

  7. Java正则表达式--Matcher.group函数的用法

    https://www.cnblogs.com/jiafuwei/p/6080984.html Java正则表达式--Matcher.group函数的用法 原来,group是针对()来说的,group ...

  8. Java中的回调函数学习-深入浅出

    Java中的回调函数一般来说分为下面几步: 声明回调函数的统一接口interface A.包括方法callback(); 在调用类caller内将该接口设置为私有成员private A XXX; 在c ...

  9. java中的string函数_java中string.trim()函数的作用实例及源码

    trim()的作用:去掉字符串首尾的空格. public static void main(String arg[]){ String a=" hello world "; Str ...

最新文章

  1. shell 输入输出重定向
  2. ECMAScript 2021(ES12)新特性简介
  3. leetcode559. N叉树的最大深度
  4. 用hundred造句子_八个有趣的开学破冰游戏,线上线下都能用
  5. Java连接Elasticsearch6.xxx CRUD篇二
  6. Dirichlet Multinomial Mixture Model做短文本聚类
  7. 区块链比特币开源_开源资金:比特币,区块链和免费软件
  8. 离散数学计算机科学丛书答案,计算机《离散数学》期中试卷答案.docx
  9. @JVM内存模型(运行时数据区)
  10. Dubbo集群容错策略源码分析
  11. 官网下载的oracle有病毒,oracle 中勒索病毒怎么恢复?
  12. 【Flex】FLEX工程合并留意错误。
  13. 论文阅读 (70):Exploring Self-attention for Image Recognition
  14. Php微信拉黑,微信被拉黑或删除?用这个方法强制聊天
  15. HTML5中定位网页元素重点总结
  16. Window拷贝文件到Ubuntu虚拟机
  17. Cerebral Cortex:疼痛热刺激引起的脑功能网络分离与整合
  18. 入门php学习 -- 学生信息系统
  19. html颜色趋势,跟上色彩潮流!带你展望2015年的网页设计配色趋势
  20. 【数据结构】7-4 病毒感染检测 (15 分)

热门文章

  1. centos无法识别NTFS格式的U盘解决办法
  2. echart显示多组数据
  3. Cyclone Protocol V3.0:登陆,以太坊!
  4. 基于软路由连接上网的相关配置
  5. 京东商品详情数据接口api
  6. 万字详解大数据平台异地多机房架构实践
  7. [个人笔记]HCIP-Routing Switching-IEEP/H12-223
  8. [转].NET开发邮件发送功能的全面教程(含邮件组件源码)
  9. 基本类型为空导致线上空指针异常问题 java.lang.NullPointerException: cannot unbox null value
  10. 统计遗传学:第三章,群体遗传