Adloun

informatique (MP2I/MPI) · Chapitre 15 · Application directe du cours

Ce que la rencontre au milieu énumère vraiment

Diviser pour régner · niveau 2

Énoncé

Compter le nombre de sommes effectivement construites par l'algorithme de rencontre au milieu, et le comparer à l'exhaustif. Que devient-il si est impair ?

Corrigé

L'algorithme construit sommes à gauche et à droite, soit environ en tout — au lieu de . Mesuré sur entiers :

sommes construitesrapport à l'exhaustif
exhaustif ( masques)
rencontre au milieu512

Le rapport vaut , soit pour . Pour , il vaut : c'est le chiffre du cours, retrouvé.

Si est impair, n / 2 tronque et la première moitié a un élément de moins : contre . Le déséquilibre coûte un facteur sur le côté le plus gros, ce qui est sans importance. Ce qui importerait, ce serait de découper contre : on retomberait sur , c'est-à-dire sur l'exhaustif. Le partage en deux moitiés égales n'est pas un détail d'écriture, c'est l'endroit où l'algorithme gagne : est minimal en .

Où le temps passe réellement. Construire les sommes coûte ; les trier coûte ; les recherches dichotomiques coûtent également. C'est donc le tri et les recherches qui dominent, d'où le du annoncé.

Et la mémoire. La rencontre au milieu stocke sommes ; à , cela fait entiers, soit méga-octets — praticable. À , ce serait entiers, soit gigaoctets. Cette méthode échange du temps contre de la mémoire, et c'est la mémoire qui devient la limite.

Exercices semblables

Le cours du chapitre · Tous les exercices du chapitre