zoukankan      html  css  js  c++  java
  • 拉格朗日插值

    拉格朗日插值

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

    求多项式在某处的点值

    [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}),这样就可以快速转移了。

    挺好的,吊打高斯消元。

  • 相关阅读:
    git
    fragment
    Builder模式
    代码混淆
    android studio快捷键
    小知识点
    angular组件使用
    英语摘要2019-6-4
    英语笔记2019-4-3
    搭建Eureka注册中心时遇到的问题
  • 原文地址:https://www.cnblogs.com/Hs-black/p/13615158.html
Copyright © 2011-2022 走看看