Complexité Algorithmique

Programming, Math, Algorithms · exam

Voir tous les documents en programmation

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

Module

Complexité Algorithmique

Enseignant

Chiheb-Eddine Ben N’Cir

Date

Durée

09/11/2016

1h

Exercice 1 (6 points)

La multiplication des deux matrices quadratiques de taille n donne la matrice C quadra-

tique de taille n:

1. Ecrire un algorithme qui effectue la multiplication des deux matrices quadratiques A et B et

Publicité

stocke les résultats en C.

2. Déterminer la fonction de temps maximale (”worst case”) T(n) pour des matrices de taille n. (vous

devez calculer le nombre d’opérations)

3. Déterminer la complexité asymptotique pour calculer des matrices de taille n.

Exercice 2 (6 points)

1- La technique de hashage permet d’accélérer l’algorithme de recherche d’un élément dans un

ensemble de données. Quel serait la complexité asymptotique d’un tel algorithme ? Expliquer

brièvement la gestion des collisions avec le hashage double.

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

seconde. Quel est le temps nécessaire en pour exécuter le programme P1 ?

P1

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

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

Publicité

élémentaires)

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

élémentaires)

P2

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

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

élémentaire)

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

élémentaires)

Exercice 3 (6 points) Calculer la complexité asymptotique des algorithmes suivants en fonction de

n : (Donner le détail de calcul)

int m=1 ;int m2=1;

While ( m2<=n ) {

Publicité

int j=1; int x=0;

While (j < m2)

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

m2=m*2

}

int i =1 ;int K=1;

While ( i<=n || k>=n )

{

int j=i ; int x=0;

While (j < k)

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

i=i+2;

K=K*2

Publicité

}

n2=n

i = 0

While (n2 > 0 && i<n) {

T[i] = n2 mod 2

n2 = n2 / 2

i = i + 1

}