Enoncé précédent Enoncé suivant

 

 C21. Vecteurs  Corrigé 

Exercice 1 : Interclassement de deux vecteurs ordonnés

Soient deux vecteurs V1[1..N] et V2[1..M] ordonnés en ordre croissant. Construire un troisième vecteur ordonné V3[1..N+M] ordonné dans le même sens contenant tous les éléments de V1 et V2. Ces derniers ne sont parcourus qu'une seule fois.

Exercice 2 : Permutation de deux sous vecteurs

Soit un vecteur T de N éléments à valeurs quelconques et un entier P tel que 1 <= P <= N. Ecrire un algorithme qui permute les deux sous vecteurs T[1..P] et T[P+1..N] sans utiliser un vecteur intermédiaire. Exemple : Si T = (5, 12, 14, 3, 2, 8) et P = 3 alors après permutation T devient (14, 3, 2, 8, 5, 12).

Exercice 3 : Insertion par fonction

Utiliser la fonction F(X) = X Mod 10 pour ranger les éléments suivants dans le vecteur V[0..9] :

2, 15, 8, 12, 16, 25

L'élément X est rangé dans la case F(X) à moins que celle-ci est peine auquel cas il est rangé dans la première case libre fournie par la séquence cyclique suivante :

F(X)+1, F(X)+2, .. M-1, 0, 1, ..

Concevoir l'algorithme d'insertion de K éléments dans le vecteur V[0..N-1] au moyen de la fonction

F(X) = X Mod N