Zaawansowane algorytmy i struktury danych/Wykład 4: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Sank (dyskusja | edycje)
Sank (dyskusja | edycje)
Linia 1: Linia 1:
= Abstrakt =  
== Abstrakt ==


Naturalna metoda mnożenia dwóch wielomianów stopnia 'n' wymaga
Naturalna metoda dodawania dwóch wielomanów wymaga czasu <math>\Theta(n)</math>, natomiast prosty algorytm mnożenia dwóch wielomianów stopnia <math>n</math> wymaga czasu <math>\Theta(n^2)</math>. W wykładzie tym pokażemy, jak z wykożytaniem szybkiej transformaty Fouriera (STF), wykonać wszystkie podstawowe opreracje na wielomianach w czasie większym niż <math>\Theta(n)</math> o czynnik polilogarytmiczny. Pokażemy jak dla wielomianów stopnia <math>n</math>:
* mnożyć je w czasie <math>O(n \log n)</math>,
* obliczać wielomian interpolacyjny w czasie <math>O(n \log^2 n)</math>,
* obliczać wartość wielomianiu w <math>n</math> punktach w czasie <math>O(n \log^2 n)</math>,
* dzielić wielomiany w czasie <math>O(n \log^3 n)</math>.

Wersja z 10:35, 18 lip 2006

Abstrakt

Naturalna metoda dodawania dwóch wielomanów wymaga czasu Θ(n), natomiast prosty algorytm mnożenia dwóch wielomianów stopnia n wymaga czasu Θ(n2). W wykładzie tym pokażemy, jak z wykożytaniem szybkiej transformaty Fouriera (STF), wykonać wszystkie podstawowe opreracje na wielomianach w czasie większym niż Θ(n) o czynnik polilogarytmiczny. Pokażemy jak dla wielomianów stopnia n:

  • mnożyć je w czasie O(nlogn),
  • obliczać wielomian interpolacyjny w czasie O(nlog2n),
  • obliczać wartość wielomianiu w n punktach w czasie O(nlog2n),
  • dzielić wielomiany w czasie O(nlog3n).