浅谈秦九韶算法

科技资讯 投稿 5900 0 评论

浅谈秦九韶算法

浅谈秦九韶算法

好像FFT要用到,所以就学习一下
听说还是高中必修三的内容?

目录
    浅谈秦九韶算法
    • 秦九韶算法的应用:
    • code

秦九韶算法的应用:

当我们知道 \(x\ 的值时,求下列式子的值:

\[f(x = a_0 + a_1x + a_2x^2 + a_3x^3 + \cdots + a_{n - 1}x^{n - 1} + a_nx^n \]

那秦九韶还提出来干什么
我们发现单单一个 \(x^n\ 就需要 \(n - 1\ 次乘法,那么一共就需要 \(\sum_{i = 1} ^ {n - 1}i\ 次乘法,和 \(n\ 次加法,如下 \(n = 5\ 时:

\[f(x = a_0 + a_1x + a_2x + a_3x + a_4x + a_5x \]

显然这个十分复杂,所以才要用到奏九韶算法
秦九韶算法就是将上述式子一步步化简成如下式子:

\[f(x = ( \cdots (a_nx + a_{n - 1}x + a_{n - 2}x + \cdots + a_1x + a_0 \]

code

代码十分短

void qinjiushao(
{
    for(int i=n-1;i>=1;i--
        ans*=x,ans+=a[i];
}

编程笔记 » 浅谈秦九韶算法

赞同 (29) or 分享 (0)
游客 发表我的评论   换个身份
取消评论

表情
(0)个小伙伴在吐槽