Zaawansowane algorytmy i struktury danych/Wykład 4: Różnice pomiędzy wersjami
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Linia 28: | Linia 28: | ||
wielomianów]|interpolacja| Dla dowolnego zbioru <math>n</math> par <math>X = \{(x_0, y_0), (x_1, y_1), \ldots, (x_{n-1}, y_{n-1})\}</math> takiego, że wszystkie wartości <math>x_i</math> są parami różne, istnieje jedyny wielomian <math>C(x)</math> stopnia <math>n</math> taki, że <math>C(x_i) = y_i</math> dla <math>i = 0,1,\ldots, n-1.</math>}} | wielomianów]|interpolacja| Dla dowolnego zbioru <math>n</math> par <math>X = \{(x_0, y_0), (x_1, y_1), \ldots, (x_{n-1}, y_{n-1})\}</math> takiego, że wszystkie wartości <math>x_i</math> są parami różne, istnieje jedyny wielomian <math>C(x)</math> stopnia <math>n</math> taki, że <math>C(x_i) = y_i</math> dla <math>i = 0,1,\ldots, n-1.</math>}} | ||
<flash>file=Zasd_fft1.swf|width= | <flash>file=Zasd_fft1.swf|width=560</flash> |
Wersja z 16:15, 18 lip 2006
Abstrakt
Naturalna metoda dodawania dwóch wielomianów wymaga czasu , natomiast prosty algorytm mnożenia dwóch wielomianów stopnia wymaga czasu . W wykładzie tym pokażemy, jak z wykorzystaniem szybkiej transformaty Fouriera (STF), wykonać wszystkie podstawowe operacje na wielomianach w czasie większym niż o czynnik polilogarytmiczny. Pokażemy jak dla wielomianów stopnia :
- mnożyć je w czasie ,
- obliczać wielomian interpolacyjny w czasie ,
- obliczać wartość wielomianu w punktach w czasie ,
- dzielić wielomiany w czasie .
Szybkie Mnożenie wielomianów
Niech i będzą wielomianami stopnia nad ciałem . Wielomiany te możemy jednoznaczne reprezentować poprzez ich wartości w punktach. Następujące twierdzenie zostało sformułowane w ramach wykładu z Metod Numerycznych.
Twierdzenie [Twierdzenie o interpolacji wielomianów]
Dla dowolnego zbioru par takiego, że wszystkie wartości są parami różne, istnieje jedyny wielomian stopnia taki, że dla
<flash>file=Zasd_fft1.swf|width=560</flash>