§ 1-3 算法选择
1、正确性:阶段误差不超过用户指定的误
差限;算法稳定;不溢出。
例 1.
?? 101 dxexeI xnn
计算定积分
7,,2,1,0 ??i
nI
解,
?? 101 xn dexe
1
0
1 xn ex
e
? ? ??
1
0
1 dxex
e
n xn
11 ??? nnI
,0I如果先计算 721,,,III ?然后再计算
,*00 II 的近似值为假设计算出 ??)( *0IE误差为
??)( *1*11 IEII 的误差为的近似值则
?2)( *2*22 ?IEII 的误差为的近似值
?!3)( *3*33 ?IEII 的误差为的近似值
??????
?!7)( *7*77 ?IEII 的误差为的近似值 ?5 04 0?
n
II n
n
??
?
1
1
但如果利用递推公式
,7I先计算 !570 千分之一误差的的误差只有 II
2、高效性
编写程序时,尽量选用高效率的算法,即选用
复杂性低的算法。
例 2 已知
21,uu
都是 n维向量,I是 n阶单位矩阵,求
? ?? ?xuuIuuIy TT 2211 22 ???
编写程序时,若计算过程为:
S1:计算,将结果存入二维数组 A中
S2:计算,将结果存入二维数组 B中
S3:计算 AB,存入二维数组 C中
S4:计算 Cx
该算法的复杂性为 次乘法( S3的计算量)
? ?TuuI 112?
? ?TuuI 222?
3n
若令
此时程序的计算量为 4n次乘法,计算法的复杂性
为 4n次乘法。
? ? ? ?
? ? ? ? 1111111 22221 22
22
uyuyyuuIy
uxuxxuuIy
TT
TT
????
????