• Aucun résultat trouvé

Montrer qu’on peut résoudre ce problème en tempsO(nlogn)

N/A
N/A
Protected

Academic year: 2022

Partager "Montrer qu’on peut résoudre ce problème en tempsO(nlogn)"

Copied!
2
0
0

Texte intégral

(1)

Algorithmique avancée Licence 3

TD 4 : Transformée de Fourier rapide

Exercice 1 On considère deux ensemblesAet B, contenant chacunnentiers compris entre 0 et10n. On souhaite calculer la somme cartésienne C de A et B, définie par

C={x+y|xA yB} .

On veut trouver les éléments deCet le nombre de fois que chaque élément deC est obtenu comme somme d’éléments deAet B. Montrer qu’on peut résoudre ce problème en tempsO(nlogn).

Exercice 2 Déduire une représentation par valeurs deAmir(x) =Pn−1

j=0an−1−jxj à partir d’une représentation par valeurs de A(x) =Pn−1

j=0 ajxj, en supposant qu’aucun des points n’est 0.

Exercice 3 Étant donnée une liste de valeurs z0, z1, . . . , zn−1 – avec répéti- tions possibles –, montrer comment trouver les coefficients d’un polynômeP de degré borné parnqui s’annule uniquement sur les points donnés. La procédure trouvée devra s’exécuter en tempsO(nlog2n).

Exercice 4 On suppose disposer d’un algorithme efficace calculant la division euclidienne de deux polynomes : plus précisément, étant donné P et Q de degrés inférieurs àn1, on sait calculer le reste de la division euclidienne de P par Q, noté P modQ, en temps O(nlogn). En remarquant que P(z) = P mod (xz), montrer que l’on peut calculer (P(z0). . . P(zn−1)) en temps O(nlog2n).

FFT itérative, FFT parallèle

On cherche à donner une version itérative de l’algorithme récursif vu en cours.

Exercice 5 Dessiner l’arbre des appels récursifs de l’algorithme de la FFT pour un polynôme de degré 7P = (a0, a1, a2, a3, a4, a5, a6, a7).

Exercice 6 Écrire un algorithme Réordonne qui prend en entrée une liste den coefficients et renvoie cette liste triée en fonction de l’ordre d’apparition aux feuilles de l’arbre des appels récursifs. L’algorithme devra s’exécuter en tempsO(n).

Exercice 7 En déduire un algorithme itératifFFT-Itérative. Montrer qu’il a la même complexité que l’algorithme récursif.

Exercice 8 Montrer qu’en utilisantn/2processeurs en parallèle, le calcul peut se faire en tempsO(logn).

1 ENS de Cachan

(2)

Algorithmique avancée Licence 3

Calcul des n premières dérivées d’un polynôme en un point

Exercice 9 Étant donnés la représentation par coefficients (a0, a1, . . . , an−1) d’un polynôme A et un point x0, on souhaite déterminer A(k)(x0), la dérivée tième deAenx0, pour tous lesk∈ {0,1, . . . , n1}.

1. Connaissant des coefficientsb0, b1, . . . , bn−1 tels que

A(x) =

n−1

X

j=0

bj(xx0)j ,

montrer comment calculer A(k)(x0)pour tous lesk∈ {0,1, . . . , n1}en tempsO(n).

2. Expliquer comment trouver lesbide l’équation ci-dessus en tempsO(nlogn), connaissantA(x0+ωnk)pourk∈ {0,1, . . . , n1}.

3. Démontrer que

A(x0+ωkn) =

n−1

X

r=0

ωnkr

r!

n−1

X

j=r

f(j)g(jr)

,

f(j) =ajj! etg(l) =xl0/(l!).

4. Expliquer comment évaluerA(x0kn)pourk∈ {0,1, . . . , n−1}en temps O(nlogn). (Indication: on pourra appliquer plusieurs FFT)

5. Conclure.

2 ENS de Cachan

Références

Documents relatifs

[r]

Montrer que le degré du corps de décomposition d’un polynôme de degré d divise d!..

Comme ces polynˆ omes sont unitaires, l’un d’eux a une racine dans A, si bien que P a une racine dans

Comme ces polynˆ omes sont unitaires, l’un d’eux a une racine dans A, si bien que P a une racine dans

Soit X un ensemble quelconque et V un sous espace vectoriel de dimension p de l'espace de toutes les fonctions de X dans

Un anneau euclidien est principal. On se propose ici d’exhiber un anneau principal non euclidien... 1) Soit A un

(1) La fonction est le quotient de fonctions enti` eres dont le d´ enominateur est non identiquement nul.. Elle d´ efinit donc une fonction m´ eromorphe

[r]