Information

Author(s) Pierre Dupont
Deadline 19/08/2025 13:15:00
Submission limit No limitation

Συνδεθείτε

Tâche 1

Nous nous intéressons à une variante du tri par sélection, pour laquelle nous désirons que le tri produise un résultat en ordre décroissant.

Nous vous présentons ci-dessous le pseudo-code de cet algorithme qu'il y a lieu de compléter.

Des sous-questions complémentaires portent sur le fonctionnement de cet algorithme et sur sa complexité temporelle.


https://inginious.info.ucl.ac.be/course/LINFO1103-0825/exam_1/selection_sort2.png

Question 1: test dans la boucle interne
Complétez la ligne 5 du pseudo-code avec l'instruction correcte.

Question 2: test dans la boucle externe
Complétez la ligne 6 du pseudo-code avec l'instruction correcte.

Question 3: rôle de la variable 'pos'
Lors de l'exécution de la ligne 6, la variable \(pos\) ...

Question 4: complexité temporelle de l'algorithme
Quelle est la complexité temporelle de l'algorithme de tri par sélection en ordre décroissant,
c'est-à-dire celle de l'algorithme décrit par le pseudo-code repris ci-dessus et correctement complété ?

On vous demande d'identifier la borne la plus appropriée.

Note : cette sous-question ne peut rapporter des points que si vos réponses aux 3 sous-questions précédentes sont correctes.


Question 5: pire cas en nombre d'échanges (= swap) effectués
Sélectionnez, parmi les propositions suivantes, l(es) instance(s) qui correspond(ent) à un pire cas
en terme de nombre d'échanges à effectuer par l'algorithme correctement complété.
Pour rappel, un pire ou un meilleur cas s'évalue relativement à la taille du problème posé.

Note : cette sous-question ne peut rapporter des points que si vos réponses aux 3 premières sous-questions précédentes sont correctes.