Complexité Algorithmique

Programming, Math · exam

Browse all programmation documents

ECOLE SUPÉRIEURE D’ECONOMIE NUMÉRIQUE, UNIVERSITÉ DE MANOUBA

Module

Enseign

ant

Exercice 1 (10 points)

Complexité Algorithmique

Date

09/11/2016

Chiheb-Eddine Ben N’Cir

Durée

1h

1) On propose de schématiser les classes de complexité à savoir : O(n.log n), O(Log n),O(n2), O(2

Advertisement

n), O(10 n) sur une courbe (taille des données en abscisse et temps d’exécution en ordonnée).

Donner l’allure des différentes courbes sur un même schéma.

2) Quel est le nombre le plus grand entre : 10 100 ou 100 10 ? Expliquer ça en utilisant les classes

de complexité.

3) Etant donné un ordinateur X qui permet de traiter 10 milliards d’opérations élémentaires par

seconde. supposant que les programmes P1 et P2 ont été lancés simultanément sur la

machine. Quel programme terminera le premier ? Quel est le temps nécessaire (en minutes

et en secondes) pour exécuter toute les instructions de P1 et P2 ?

P1

i=1 \\(1 opération élémentaire )

While (i<1018 ) \\(1 opérations

élémentaires)

Advertisement

{ i=i*2 } \\(2 opérations

P2

i=1 \\(1 opération élémentaire )

While (i<1018 ) \\(1 opération

élémentaire)

{ i=i+10 } \\(2 opérations

élémentaires)

élémentaires)

4) Quel est la complexité asymptotique de ce programme ? donner le détail de calcul

int i =1 ;int K=1;

While ( i<=n && k<=n ) {

int j=i ; int x=0;

Advertisement

While (j < k)

{ x=x+1; j++; }

i=i+2;

K=K*2

}

Problème (10 points)

On propose d’implémenter un algorithme qui sauvegarde les permutations possibles d’un ensemble

des n éléments distincts {1, 2, …, n} dans une matrice PERMUT de largeur n. Par exemple pour

l’ensemble (1, 3, 2) la matrice PERMUT est :

1 2 3

1 3 2

2 1 3

Advertisement

2 3 1

3 1 2

3 2 1

1) Quel est le nombre de permutations attendues ? quel serait alors la longueur de la matrice

PERMUT ?

2) Donner une idée d’implémentation de l’algorithme.

3) Donner le code d’implémentation (notation algorithmique ou un langage choisi)

4) Quel est la complexité du programme proposé.