拉格朗日插值

拉格朗日插值

活力这么就,才知道自己不会拉格朗日插值。

求多项式在某处的点值

[f(x_0)=sum_{i=1}^{n+1}(y_iprod_{j eq i}frac {x_0-x_j}{x_i-x_j}) ]

这个貌似很简单,不再赘述。证明就是 n + 1 个点唯一确定一个 n 次多项式,那么这个多项式唯一。

求多项式的完整系数

[f(x)=sum_{i=1}^{n+1}(y_iprod_{j eq i}frac {x-x_j}{x_i-x_j}) ]

直接把 (x_0) 变成 (x) 即可。对每个都 i 求一遍,暴力展成系数,然后再直接带入即可。但是复杂度大失败 (Theta(n^3))

我们有更优的解法,首先容易发现一堆常数 (y_iprod _{j eq i}frac {1}{x_i-x_j}),然后考虑上面的那个式子即可。

先把 (f(1)) 求出来,考虑转移 (f(i)=frac {(x-x_{i-1})f(i-1)}{x-x_i}),这样就可以快速转移了。

挺好的,吊打高斯消元。

原文地址:https://www.cnblogs.com/Hs-black/p/13615158.html