拉格朗日插值
Lagrange 插值法
给定 \(n\) 个点的坐标,现在你需要求出一个过这 \(n\) 个点的 \(n - 1\) 次多项式。
Lagrange
的聪明之处在于想到了用若干个多项式函数去还原这个多项式函数。
考虑构造 \(f_i(x)\) 函数使得其 \(f_i(x) = \begin{cases} 1 (x = x_i)\\ 0 (x \ne x_i) \end{cases}\)
那么最后我们需要找到的那个多项式函数就是 \(f(x) = \displaystyle \sum_{i = 1}^{n} y_if_i(x)\)。
然后如何构造一个 \(f_i(x)\) 使得其满足上面提到的条件呢?不妨构造:
\(f_{i}(x) = \displaystyle \prod_{j \ne i} \frac{(x - x_j)}{(x_{i} - x_j)}\)
那么很显然,当 \(x = x_i\) 的时候这个函数的取值肯定会是 \(1\),假若 \(x \ne x_i\),那么当 \(x\) 的横坐标等于其它点(\(j \ne i,x = x_j\))的时候,那么这个函数的取值必然会取到 \(0\),于是乎,我们就完成了整个算法。
Lagrange
插值法查函数单点的取值也会是 \(O(n^2)\) 的。
By MYCui