【问题标题】:Finding the sum of products from the product of sums (polynomials)从总和的乘积中找到乘积的总和(多项式)
【发布时间】:2021-09-26 13:09:19
【问题描述】:

多项式通常写为幂的总和(或生成器的各种乘积),Google 为我提供了很多结果,如何将其转化为纯和的乘积形式(您可以在其中看到多项式消失):

x^2 - 1 = (x + 1) (x - 1)

我正在寻找另一个方向,这更容易,但如果天真地完成,计算量仍然很大。

我有一个多项式消失的 n 值数组。我能以某种方式得到 n log n 中的系数吗?

【问题讨论】:

    标签: algorithm polynomials polynomial-math


    【解决方案1】:

    我对此表示怀疑。 N log N 是理论上已知的多项式乘法的最佳渐近速度。但是,这个问题似乎需要通过乘法进行分层多项式展开

    step 1) x^2 + Ax + B = (x + a)(x + b), x^2 + Cx + D = (x + c)(x + d), ..., 
    step 2) x^4 + Ax^3 + Bx^2 + Cx + D = (x^2 + Ax + B)(x^2 + Cx + D), ...
    ...
    step log N/2)  (polynomial of order N/2) * (polynomial of order N/2)
    

    当多项式的大小变得足够大时,可以开始使用基于 FFT 的方法,或者在此之前使用 Karatsuba。我希望,这种方法介于 O(N^2) 的朴素方法之间,它将基础多项式 (x+a) 与 (x+b)、(x+c) 相乘...和 N log N,可能为 N (log N)^2。

    【讨论】:

    • 有趣,我确实希望看到一些在基本代数层面(而不仅仅是复数)解决这个问题的材料。
    猜你喜欢
    • 1970-01-01
    • 2016-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多