• Aucun résultat trouvé

Analyser la complexit´e de cet algorithme

N/A
N/A
Protected

Academic year: 2022

Partager "Analyser la complexit´e de cet algorithme"

Copied!
1
0
0

Texte intégral

(1)

BCPST Complexit´es d’algorithmes 2014-2015

Les 3 premiers exercices se feront sans ordinateur.

Exercice 1 :

Dans cet exercice, L d´esigne une liste tri´ee de nombres et a un nombre.

(1) a. ´Ecrire un algorithme na¨ıf qui prend en arguments L et a et renvoie un indice i tel que L[i] =a.

b. Analyser la complexit´e de cet algorithme.

(2) a. ´Ecrire un algorithme plus rapide.

b. Analyser la complexit´e de celui-ci.

Exercice 2 :

On se donne l’algorithme suivant : def f o n c t i o n ( x , n ) :

f o r i in range( n ) : print( x ∗∗ i )

(1) Expliquer ce que fait cet algorithme.

(2) Quel est la complexit´e de celui-ci ?

(3) Donner un algorithme qui fera le mˆeme affichage avec une complexit´e de l’ordre de n op´erations.

(4) Modifier cet algorithme pour afficher seulement x∗ ∗n.

(5) Existe-t-il un algorithme permettant de faire le mˆeme affichage plus rapidement ? Exercice 3 :

(1) Analyser les complexit´es des algorithmes d’op´erations sur les matrices. (on sup- posera que toutes les matrices sont carr´ees de taillesn×n)

(2) Analyser les complexit´es des algorithmes d’op´erations sur les polynˆomes. (On supposera que tous les polynˆomes sont de taille n)

Exercice 4 :

Un probl`eme classique en informatique consiste `a rechercher, non pas une seule valeur, mais une s´equence de valeurs dans un tableau. Cela revient `a chercher une occurrence d’un tableau dans un autre ou, pour les chaˆınes de caract`eres, une occurrence d’un mot dans un texte.

On souhaite ´ecrire une fonction recherche mot qui, ´etant donn´es deux tableaux m et t, d´etermine la position de la premi`ere occurrence de m dans t, si elle existe, et renvoie non sinon. Ainsi, pour les tableauxm = [1,2,3] ett= [2,1,4,1,2,6,1,2,3,7], recherche mot renvoie 6 :

[2, 1, 3, 1, 2, 6, 1, 2, 3, 7].

(1) ´Ecrire (sur papier) un algorithme r´epondant `a ce probl`eme.

(2) Analyser la complexit´e de cet algorithme.

(3) Impl´ementer cet algorithme en Python.

(4) ´Evaluer le temps d’ex´ecution de cet algorithme avec diff´erentes listes. Est-ce coh´erent avec la complexit´e th´eorique ?

Références

Documents relatifs

En d´ eduire une expression simple de f (on pourra distinguer plusieurs cas suivant les intervalles et les valeurs de a consid´ er´

Pour faire l’analogie avec l’exemple du jeu de cartes, lorsqu’on est ` a la i-` eme ´ etape du parcours, le i-` eme ´ el´ ement est la carte saisie, les ´ el´ ements pr´

Le programme devra dire si l’utilisateur a trouv´ e ou pas le nombre, si l’utilisateur ne le trouve pas, le programme devra indiquer si le nombre saisi est trop grand ou trop

On souhaite ´ ecrire une fonction recherche mot qui, ´ etant donn´ es deux tableaux m et t, d´ etermine la position de la premi` ere occurrence de m dans t, si elle existe, et

Dans un premier temps, on r´ epondra aux questions ` a l’´ ecrit puis pour v´ erifier que nos algorithmes sont bien ´ ecrits, on les programmera sur machine.. Exercice

Ecrire une fonction ´ chercher qui prend en argument une liste et un nombre et renvoie l’indice de la premi` ere occurrence de ce nombre dans la liste s’il existe et

[r]

Cr´ eer une fonction tirer d’argument n qui effectue la simulation de l’exp´ erience pr´ ec´ edente et renvoie le num´ ero de la case dans laquelle se trouve la bille ` a la fin..