一维多项式计算
如下给出一维多项式
P ( x ) = a n − 1 x n − 1 + a n − 2 x n − 2 + ⋯ + a 1 x + a 0 P(x) = a_{n-1} x^{n-1} + a_{n-2}x^{n-2} + \cdots + a_1x + a_0 P(x)=an−1xn−1+an−2xn−2+⋯+a1x+a0
使用递推的方式 将如下进行变形
P ( x ) = ( ⋯ ( ( a n − 1 x + a n − 2 ) x + a n − 3 ) x + ⋯ + a 1 ) x + a 0 P(x) = (\cdots ((a_{n-1}x+ a_{n-2})x + a_{n-3} )x + \cdots + a_1) x + a_0 P(x)=(⋯((an−1x+an−2)x+an−3)x+⋯+a1)x+a0
通过上面的表达式可以法线,只要从里往外,逐层按照如下的方式递推, 可以计算得到整个一维多项式的值.
R
n
−
1
=
a
n
−
1
R_{n-1} = a_{n-1}
Rn−1=an−1
R
k
=
R
k
+
1
x
+
a
k
,
⋯
k
=
n
−
2
,
⋯
1
,
0
R_k = R_{k+1} x + a_k, \cdots k = n -2 , \cdots 1, 0
Rk=Rk+1x+ak,⋯k=n−2,⋯1,0