English 中文(简体)
Fastest algorithm for evaluating large polynomials
原标题:

A rather general question, what is the fastest (in terms of time complexity) algorithm for evaluating polynomials of Degree 400 to 500.

Thanks in advance.

问题回答

If you are talking about evaluation of polynomials, you probably can t be faster than the linear time Horner scheme - except if you have some special circumstances.

If you are talking about the multiplication of polynomials, the Karatsuba algorithm is rather easy to implement and quite fast for that size. I believe fast Fourier transform based algorithms are only worth using if you have larger polynomials.

Modified versions of fast Fourier transforms (FFTs) generally provide very good results for this sort of problem. Take a look at this paper, which suggests taking a hybrid FFT approach. I would start your research by looking for terms along the lines of "fast univariate FFT". It may also help you to note that multiplying two polynomials is essentially the same operation as multiplying two integers.





相关问题
Where can I find soft-multiply and divide algorithms?

I m working on a micro-controller without hardware multiply and divide. I need to cook up software algorithms for these basic operations that are a nice balance of compact size and efficiency. My C ...

Division result is always zero [duplicate]

I got this C code. #include <stdio.h> int main(void) { int n, d, i; double t=0, k; scanf("%d %d", &n, &d); t = (1/100) * d; k = n / 3; ...

Double variable keeping wrong value

Simimilar problem to Math.Atan2 or class instance problem in C# and add two double given wrong result It is something that simple lines: public static String DegreeToRadianStr(Double degree) { ...

Python basic maths

My friend wrote up this script for me to calculate the quantity of construction materials needed for a theoretical site. It basically takes 2 numbers and increases them independently until the large ...

Fast multiplication of very large integers

How to multiply two very large numbers greater than 32 characters for example multiplication of 100! with 122! or 22^122 with 11^200 by the help of divide and conquer, do any body have java code or C#...

Multiplying two long long ints C

I am working on a program in C as a part of Homework in which I have to get the product of two long numbers which are taken as character string. eg: 123456789021 and 132456789098. Since it is taken as ...

热门标签