Algorithmes et structures de données avancées : TD 3

publicité
Université Bordeaux 2
Licence MASS/Scico 5ème semestre (2008/2009)
Algorithmes et structures de données avancées : TD 3
Jeux de yams (Algorithmes, tableaux multidimensionnels, temps d’exécution T(n))
Exercice 3.1 Matrice d’identité
Considérer la matrice d’identité suivante

1
0
A=
...
0
:
0
1
...
0

... 0
... 0 
,
... ...
... 1
1. Ebaucher un structogramme pour un algorithme qui crée une matrice carré d’identité de
taille n.
2. Quel est le dégré du plus grand polynome dans la fonction T (n) de votre algorithme (dans
le pire des cas).
Exercice 3.2 Addition de matrices
Considérer les deux matrices carrées A et B de taille n :



a11 a12 ... a1n
b11 b12
 a21 a22 ... a2n 
 b21 b22
,B = 
A=
 ...
 ... ...
... ... ... 
an1 an2 ... ann
bn1 bn2
L’addition de ces deux matrices donne la matrice

c11 c12 ...
 c21 c22 ...
C=
 ... ... ...
cn1 cn2 ...
avec
cij = aij + bij

... b1n
... b2n 
,
... ... 
... bnn
C quadratique de taille n:

c1n
c2n 

... 
cnn
∀i, ∀j
1. Ebaucher un structogramme pour un algorithme qui effectue l’addition des deux matrices
A et B et stocke les résultats en C.
2. Quel est le dégré du plus grand polynome dans la fonction T (n) de votre algorithme (dans
le pire des cas).
Exercice 3.3 Tableau à une dimension
Vous disposez d’un tableau numériques de n entrées.
1. Affecter chaque entrée de ce tableau numériques avec des valeurs entières aléatoires entre
1 et 1000.
2. Ecrire le structogramme d’un algorithme qui décide s’il y a une valeur stocké dans la
variable valeur dans le tableau, et qui affiche la réponse.
3. Quel est le dégré du plus grand polynome dans la fonction T (n) de votre algorithme (dans
le pire des cas, c-à-d que la valeur n’existe pas dans le tableau).
4. Supposez maintenenant que votre tableau numériques est trié par ordre croissant.
5. Ecrire le structogramme d’un algorithme qui décide s’il y a une valeur stocké dans la
variable valeur dans ce tableau trié, et qui affiche la réponse.
6. Qu’en déduisez-vous pour la fonction T (n) de votre algorithme (dans le pire des cas, c-à-d
que la valeur n’existe pas dans le tableau)?
Exercice 3.4 Multiplication de matrices
La multiplication des deux matrices carrées de taille n donne la matrice C quadratique de
taille n:


c11 c12 ... c1n
 c21 c22 ... c2n 

C=
 ... ... ... ... 
cn1 cn2 ... cnn
avec
cij =
n
X
aik bkj
∀i, ∀j
k=1
1.
et
2.
3.
Ebaucher un structogramme pour un qui effectue la multiplication des deux matrices A
B et stocke les résultats en C.
Ecrire l’ algorithme.
Quel est le dégré du plus grand polynome dans la fonction T (n) de votre algorithme ?
2
Téléchargement