ÉCOLE SUPÉRIEURE FRANÇAISE D’INFORMATIQUE ET INTELLIGENCE ARTIFICIELLE
Sujet : Algorithmique Avancée
Exercice 1 : (1pt*4=4pts)
Soit la file F, écrire les fonctions ou procédures suivantes :
- estVide qui test si la file est vide
- Tete qui renvoie la valeur en tête de la file
- Emfiler qui permet d’ajouter un élément dans la file
- Defiler qui permet de supprimer un élément dans la file
Exercice 2 : (5pts)
On se donne deux files F1 et F2. La file F1 contient une suite de nombres entiers positifs. On
suppose qu’il existe une classe File contenant les méthodes estVide, Tete, emfiler et defiler.
Écrire un algorithme pour déplacer les entiers de F1 dans F2 de façon à avoir dans F2 tous les
nombres pairs avant les nombres impairs.
Exercice 3 : (6pts)
On considère trois tris élémentaires : le tri sélection, le tri par insertion (trois variantes), et le
tri bulle. On considère pour un tableau les deux cas extrêmes où le tableau est déjà trié (dans
l’ordre croissant), et celui où il est trié dans l’ordre décroissant. Décrire avec précision le
comportement et la complexité de chacun des algorithmes dans ces deux cas. Quelles
conséquences peut-on en tirer ?
Exercice 4 : (4pts)
Proposer une démarche de résolution du problème ci-dessous :
Écrire un algorithme qui demande à l’utilisateur un nombre puis calcul la somme des nombres
premiers jusqu’à ce nombre. Exemple : si l’utilisateur entre 5, le programme fera 2+3+5 et
retournera 10.
2021/2022 1/1