了解了浮点数的存储以及手算平方根的原理,我们可以考虑程序实现了。 先实现一个64位整数的平方根,根据之前的手算平方根,程序也不是那么难写了。 其实,可以合在一起写,代码会短一些,但效率会低那么一点点,而且编译器应该不太容易优化。 不过,我们不需要这个结果。 为了验证其正确性,我们来写个C语言的mai ...
分类:
编程语言 时间:
2017-07-26 01:58:08
阅读次数:
221
曾经做一个硬件成本极度控制的项目,因为硬件成本极低,并且还需要实现较高的精度测量,过程中也自己用C语言实现了正弦、余弦、反正切、平方根等函数。 以下,无论是在我的实际项目中还是本地的计算机系统,int都是4个字节且机器为小端,除非特别提及,否则都如此默认。按理float的存储没有大小端之分,可是的确 ...
分类:
编程语言 时间:
2017-07-26 01:55:30
阅读次数:
305
一个函数从数学上来说可以有无数个函数列收敛于这个函数,那么程序逼近实现来说可以有无数种算法,平方根自然也不例外。 不知道有多少人还记得手算平方根,那是满足每次在结果上添加一位,也就是按位逼近运算结果的唯一算法。至于数学上如何证明这个唯一性我就不说了,数学证明不会有那么多人有兴趣。按位逼近更加适合手算 ...
分类:
编程语言 时间:
2017-07-26 01:44:19
阅读次数:
243
我们可以用几种不同的方法来改进我们的特征和假设函数的形式。 我们可以把多个特征组合成一个。例如,我们可以将X1和X2为新变量x3。 多项式回归: 我们的假设函数不一定是线性的(如果不符合数据的话)。 我们可以通过假设它的二次、三次或平方根函数(或任何其他形式)来改变我们的假设函数的行为或曲线。 例如 ...
分类:
其他好文 时间:
2017-07-23 15:22:41
阅读次数:
127
根据费马小定理,若p为素数,则必有a^(p-1) mod p=1 对和p互质的a成立。 根据二次探测定理:如果p是素数,且0<x<p,则方程x^2 mod p=1的解为1或p-1。 所以若p为素数,则必有a^(p-1) mod p 的平方根为1或-1 分解p-1为d*2^s,其中d为奇数 从i=0逐 ...
分类:
其他好文 时间:
2017-07-22 22:39:00
阅读次数:
237
es5 Math对象属性 属性 说明 Math.E 自然对数的底数,即常量e的值 Math.LN10 10的自然对数 Math.LN2 2的自然对数 Math.LOG2E 以2为底e的对数 Math.LOG10E 以10为底e的对数 Math.PI π Math.SQRT1_2 1/2的平方根(即2... ...
分类:
其他好文 时间:
2017-07-21 19:02:30
阅读次数:
225
参考文章: 算术函数 三角函数 指数函数 常数 ...
分类:
其他好文 时间:
2017-07-17 20:03:12
阅读次数:
193
牛顿迭代法求解平方根 牛顿迭代法求解平方根 2015-05-16 10:30 2492人阅读 评论(1) 收藏 举报 2015-05-16 10:30 2492人阅读 评论(1) 收藏 举报 版权声明:本文为博主原创文章,未经博主允许不得转载。 版权声明:本文为博主原创文章,未经博主允许不得转载。 ...
分类:
其他好文 时间:
2017-07-14 23:53:57
阅读次数:
281
KNN补充: 1、K值设定为多大? k太小,分类结果易受噪声点影响;k太大,近邻中又可能包含太多的其它类别的点。 (对距离加权,可以降低k值设定的影响) k值通常是采用交叉检验来确定(以k=1为基准) 经验规则:k一般低于训练样本数的平方根 2、类别如何判定最合适? 加权投票法更恰当一些。而具体如何 ...
分类:
编程语言 时间:
2017-07-11 23:06:00
阅读次数:
166
分析:直接用二分还是会T,用更快的牛顿迭代法。把问题转化为求x^2-n=0的根,假设解为x0,当前解为x且x^2-n>0,在(x,x^2-n)处作切线,与x轴交点横坐标为新的x,然后迭代即可,比二分法快,但是貌似只能用在凹函数或凸函数上。。 java水高精度真是666。。。 ...
分类:
其他好文 时间:
2017-07-10 00:39:07
阅读次数:
241