牛顿迭代
详细介绍见维基百科 http://zh.wikipedia.org/wiki/牛顿法
举一个栗子
找平方根
给一个数a,求其平方根。
设其平方根为x 则有 x^2 - a = 0,设函数f(x) = x^2 - a,
取x0的初值尽量靠近a的平方根(因为初值的选择影响迭代的次数)
根据 f(x0) = (x0 - x).f’(x0)
...
分类:
其他好文 时间:
2014-08-21 13:21:34
阅读次数:
298
题目链接:uva 10428 - The Roots
题目大意:给定一个n次一元多项式,求出所有解。
解题思路:牛顿迭代法,对于任意给定x,通过牛顿迭代法可以趋近距离x最近的解x0。每次找到一个解后,用多项式除法除掉x?x0后继续求解。
牛顿迭代法:xi+1=xi?f(x)f′(x)
#include
#include
#include
using namesp...
分类:
其他好文 时间:
2014-08-21 11:31:34
阅读次数:
233
算术操作符Lua支持常规的算术操作符有:”+”(加法),”-”(减法),”*”(乘法),”/”(除法),”^”(指数),”%”(取模),一元的”-”(负号)。所有的这些操作符都用于实数。例如:x^0.5将计算x的平方根,x^3将计算x的3次方。关系操作符Lua提供的关系操作符有:””,”=”,”==...
分类:
其他好文 时间:
2014-08-20 20:51:42
阅读次数:
274
求解立方根或者是平方根甚至是N次方根,均可用牛顿迭代法求解。牛顿迭代法如下所示:#include #include #include #include #include #include using namespace std;double Lifanggen(double src){ double...
分类:
其他好文 时间:
2014-08-17 16:49:32
阅读次数:
260
二分法:double mysqrt(double a){ if(a == 0 ) return 0; double precision = 1.0e-7, start = 0, end = a; if(a precision) { double mid = (...
分类:
其他好文 时间:
2014-08-16 21:04:21
阅读次数:
257
原题:
Implement int sqrt(int x).
Compute and return the square root of x.
==============================以下为引用====================================
牛顿迭代法
为了方便理解,就先以本题为例:
计算x2 = n的解,令f(...
分类:
其他好文 时间:
2014-08-14 16:51:18
阅读次数:
263
1.ABS(X)取绝对值函数2.MOD(X,Y)取余数mod(4,3) =1mod(3,4)=33.CEIL(X)返回大于 或者等于X的最小整数4.FLOOR(X)返回小于或者等于X的最大整数5.POWER(X,Y)返回X的Y次幂6.SQRT(X)返回X的平方根7.ROUND(X,[Y])返回对X的...
分类:
数据库 时间:
2014-08-12 18:14:05
阅读次数:
299
题目链接题意 : 给你N个数,进行M次操作,0操作是将区间内的每一个数变成自己的平方根(整数),1操作是求区间和。思路 :单点更新,区间查询,就是要注意在更新的时候要优化,要不然会超时,因为所有的数开几次方之后都会变成1,所以到了1不用没完没了的更新。 1 //HDU 4027 2 #include...
分类:
其他好文 时间:
2014-08-07 12:39:19
阅读次数:
208
Problem Description数列的定义如下:数列的第一项为n,以后各项为前一项的平方根,求数列的前m项的和。Input输入数据有多组,每组占一行,由两个整数n(n#includeint main(){ double n,m,t; int i; while(scanf("%lf%lf"...
分类:
其他好文 时间:
2014-07-30 11:43:43
阅读次数:
175
求一个正数N的开方, 并且可以指定精度, 要求不能用库函数sqrt方法一:如下所示,先求sqrt(N)的整数部分,再求小数点后1位,2位 ... ...方法二:牛顿迭代法,根据公式 Ai+1 = (Ai+number/Ai)/2 ,其中Ai 的初始值,即A1任取,如1,2,3 ...// 求一个正数...
分类:
其他好文 时间:
2014-07-27 22:00:29
阅读次数:
251