informatique (MP2I/MPI) · Chapitre 15 · Exercice de TD
Trois récurrences, trois régimes
Diviser pour régner · niveau 2
Énoncé
Résoudre à la main , et , avec . Que remarque-t-on ?
Corrigé
On déroule sur étages, en comptant le travail à chaque étage. À l'étage , il y a sous-problèmes de taille .
(a) . Étage : sous-problèmes coûtant chacun, soit par étage. Avec étages : . Tous les étages pèsent pareil.
(b) . Étage : . La somme géométrique est dominée par son dernier terme : . Les feuilles dominent.
(c) . Étage : . La somme est dominée par son premier terme : . La racine domine.
La vérification numérique, en déroulant les récurrences à :
| Récurrence | forme close | régime | |
|---|---|---|---|
| étages égaux | |||
| feuilles | |||
| racine | |||
| étages égaux | |||
| feuilles |
Ce qu'il faut remarquer, et c'est le point de l'exercice. Les lignes (b) et (c) donnent exactement la même valeur , et pourtant elles ne se ressemblent en rien : dans (b) le travail est presque entièrement dans les feuilles, dans (c) il est presque entièrement dans l'appel initial. Une même complexité peut recouvrir deux comportements opposés — et cela se voit dès qu'on change autre chose : si l'on paralléliseait, (c) ne gagnerait rien et (b) tout.
La ligne est celle de Karatsuba (exercice suivant) : , et .
La règle pratique. Comparer à : si la racine domine, si les feuilles dominent, si tous les étages pèsent pareil et un apparaît. C'est le calcul du chapitre chap:recursivite, à faire à la main chaque fois.
Exercices semblables
- Dichotomiser sur la réponse : la racine carrée entière corrigé
- Dichotomiser sur les valeurs candidates, et non sur les réels corrigé
- Une ligne qui coûte un ordre de grandeur corrigé
- Karatsuba : trois produits au lieu de quatre corrigé
- Problème — La paire de points la plus proche, du croquis au programme corrigé