今天在图书馆借了一本《高效能程序员的修炼》,内容幽默风趣。(其实我是看到作者是stack overflow创始人,才借的)。看到几十页中有一个例子是关于求平方根的,代码很简单,但是```第一次没看懂····才知道原理是根据牛顿-拉夫逊方法即牛顿迭代法,具体细节大家可以百度一下。
private double SquareBootAppr(int n)
{
double r=n/2;
wh...
分类:
其他好文 时间:
2014-09-16 17:28:50
阅读次数:
230
一、数学 abs -- 绝对值 ceil -- 进一法取整 floor -- 舍去法取整 fmod -- 返回除法的浮点数余数 round -- 对浮点数进行四舍五入 sqrt -- 平方根 pi()/M_PI -- 得到圆周率值 is_nan -- 判断是否为合法数值 is_finite --.....
分类:
Web程序 时间:
2014-09-14 23:37:57
阅读次数:
279
今天的小程序是厄拉多塞筛--寻找小于整数N的所有素数厄拉多塞筛的基本思想是:从最小的素数2开始,首先把2圈出,然后将2的倍数去除。找出下一个未被圈出的数3,将3的倍数去除。找出下一个未被圈出的数35,将5的倍数去除,以此类推,直到N的平方根为止,就不需将其倍数去除了。最后剩余的被圈出的数就是要找的素...
分类:
其他好文 时间:
2014-09-14 20:41:37
阅读次数:
221
SCIP 1.1.7的一个练习。牛顿迭代法(Newton's method)又称为牛顿-拉夫逊方法(Newton-Raphson method),它是牛顿在17世纪提出的一种在实数域和复数域上近似求解方程的方法。多数方程不存在求根公式,因此求精确根非常困难,甚至不可能,从而寻找方程的近似根就显得特别...
分类:
其他好文 时间:
2014-09-13 21:20:05
阅读次数:
306
NaN&INF定义
在一些情况会出现无效的浮点数,例如除0,例如负数求平方根等,像这类情况,获取到的浮点数的值是无效的。
NaN 即 Not a Number 非数字
INF 即 Infinite 无穷大...
分类:
其他好文 时间:
2014-09-10 14:17:40
阅读次数:
908
常用函数 SQRT() 返回表达式的平方根 取近似值函数 CEILING() 返回>=表达式的最小整数,返回数据类型与表达式相同,可为int,money,float型 FLOOR() 返回 ),例:select left(title,8) from news RIGHT() ...
分类:
其他好文 时间:
2014-09-10 00:20:49
阅读次数:
557
数字函数ABS 取绝对值 POWER 乘方 LN 10为底数取幂SQRT 平方根 EXP e的n次乘方 LOG(m,n) m为底数n取幂数学运算函数:ACOS ATAN ATAN2 COS COSH SIGN SIN SINH TAN TANH CEIL 大于或等于取整数 FLOOR 小...
分类:
数据库 时间:
2014-09-09 11:39:18
阅读次数:
217
我只能想出二分的方法,而且还不一定能写出最简洁的代码。无论刷多少遍,牛顿迭代法我都想不到,莫名有种悲哀的感觉:智力是硬伤啊。就算如此,却还要一遍遍不厌其烦地刷,这才是最悲剧的。多说无益,上代码。 二分:class Solution {public: int sqrt(int x) { ...
分类:
其他好文 时间:
2014-09-01 17:18:13
阅读次数:
144
最近一个哥们,是用牛顿迭代法求解一个四变量方程组的最优解问题,从网上找了代码去改进,但是总会有点不如意的地方,迭代的次数过多,但是却没有提高精度,真是令人揪心! 经分析,发现是这个方程组中存在很多局部的极值点,是用牛顿迭代法不能不免进入局部极值的问题,更程序的初始值有关! 发现自己好久没有是用Mat...
分类:
其他好文 时间:
2014-08-31 01:38:20
阅读次数:
571
题意:
给出一排敌军的血量,每次攻击都能将范围内的敌军血量变为原来血量的算术平方根(下取整),并询问范围内敌军的血量和。
分析:
显然的线段树,但是似乎不太好设计lazy标记啊,我们想一想算术平方根,sqrt(1)=1,且64位整数范围内最多6次就变到1了,那么只要区间内的数都为1,我就不用更新这个区间了,所以每次更新都更新到叶子结点,维护区间和就行了。数据里没有0,不过X>Y这种trick有意思吗?...
分类:
其他好文 时间:
2014-08-27 20:36:58
阅读次数:
266