优化两个长多项式的运行时间'师

时间:2014-04-22 14:28:46

标签: algorithm math time-complexity polynomial-math

在n - 1次除法的两个长多项式中,显然系数的提醒可以用O(n * n)计算。我想知道是否有更快的算法来获取提醒,例如O(nlogn)。

P.S(更新)澄清:如果多项式,p,q具有不同的度数,其中deg(p)> deg(q),是否有可能找到比O((deg(p) - deg(q))* p更快的p / q余量,而精度不会丢失?

2 个答案:

答案 0 :(得分:0)

如果多项式具有相同的度数,则可以通过一个操作确定一个进入另一个的次数(如果系数是整数,则通常是有理数)。然后,您可以将该分数乘以一个多项式并将其从另一个多项式中减去。这需要O(n)场操作,这是最佳的,因为在平均和最差情况下答案的长度为Θ(n)。

答案 1 :(得分:0)

是的,有一个更快的算法,但只适用于非常大的程度。首先反转多项式,然后使用快速(基于牛顿)泰勒级数除法来计算反转商,反转商并使用快速乘法计算余数。

第一个操作的运行时间是多项式乘以商的次数,第二个是除数的多项式乘法的第二个。