ED4 Corrige 1
Tableaux, Méthode de construction par récurrence
Exercice 1 : Le palindrome
On appelle palindrome un mot qui se lit de la même façon de gauche à droite ou de droite à gauche par exemple rotor, elle. On souhaite écrire un programme qui teste si un mot est un palindrome ou non. Question 1
Ecrire l’algorithme qui détermine si un mot est un palindrome, en utilisant une méthode de construction de boucle par récurrence
Question 2
Traduire cet algorithme en une fonction, puis écrire le programme complet.
Question 3
Écrire un programme java qui initialise un tableau de caractères, détermine si c’est un palindrome et affiche le résultat.
Exercice 2 : Le tri par sélection
L’idée du tri par sélection est de parcourir le tableau et à chaque étape de partitionner le tableau en un sous-tableau trié et un sous-tableau non trié, tel que tout élément du sous-tableau trié soit inférieur ou égal à tout élément du sous-tableau non trié.
Un tableau est trié si tout élément du tableau est inférieur ou égal à l’élément suivant;
Le partitionnement se fait de la manière suivante : on recherche l’élément minimum dans la partie non triée et on l’échange avec le premier élément de la partie non triée.
Question 1
Construire l’algorithme du tri par sélection. On considèrera deux niveaux de raffinement :
Parcours du tableau de gauche à droite : o Pour toute position dans le tableau
1- Rechercher l’élément minimum à partir de cette position ;
2- Placer l’élément minimum à cette position
On utilisera la méthode de construction par récurrence pour construire les boucles à chaque niveau
Question 2
Traduire cet algorithme en une fonction, puis écrire le programme complet.
--- Exercice 1 ------ Solutions --------------------------------------------------------------------------Question 1
Algorithme :
Idée : parcourir simultanément le tableau à partir de la gauche et à partir de la droite, tester s’il y a égalité des caractères correspondants, si non ce n’est