Deug MASS 2 Année 2000/2001
U.N.S.A.
ALGORITHMIQUE ET STRUCTURES DE DONNEES
TP 7
Tris itératifs et Révisions
Ecrire une méthode Java implémentant une variante de l'algorithme du tri à
bulles étudié en cours et en TD de manière à pouvoir spécifier le sens
désiré du tri (croissant ou décroissant), et trier le tableau sur lequel la
méthode a été appelée en conséquence.
public void triBulle(int sens)
On prendra par convention :
0=décroissant
1=croissant
1)Ecrire une méthode Java qui implémente l'algorithme du tri à trois
couleurs pour un tableau dont les éléments peuvent prendre 3 valeurs
quelconques, passées en paramètres de la méthode.
public void drapeau3(int V1, int V2, int V3)
2)Ecrire une autre méthode Java permettant de trier (en utilisant une variante de
l'algorithme du drapeau à trois couleurs) un tableau rempli avec
des valeurs quelconques de façon à trouver :
- au début du tableau les valeurs supérieures à un nombre B1,
- au centre du tableau les valeurs comprises entre un nombre B2 et B1,
- à la fin du tableau les valeurs supérieures à B2.
Les valeurs B1 et B2 sont passées en paramètres lors de l'appel de la
méthode.
Remarque : les éléments de chaque partie n'ont pas besoin d'être triés.
public void drapeau3bis(int B1, int B2)
1)Ecrire une méthode Java qui tire Nb éléments au hasard entre V1 et V2 et
affiche les valeurs obtenues par ordre croissant.
public void ex1(int Nb, int V1, int V2)
Indications : Utiliser un tableau de V2-V1+1 cases pour stocker les tirages au
fur et à mesure. Dans la première case, stocker le nombre de fois où le nombre
V1 est tiré, dans la seconde le nombre de fois où V1+1 est tiré, etc. Puis
parcourir le tableau et afficher le nombre autant de fois qu'il est indiqué
dans la case correspondante du tableau.
2)Quelles sont les modifications à apporter de façon à ce que le tableau qui
était précédemment affiché soit renvoyé à la méthode appelante ?
Ecrire une méthode Java calculant les uns après les autres les N nombres premiers
en partant de la valeur V et les range par ordre décroissant dans un tableau de
taille N.
public Tableau ex2(int N, int V)
Ecrire une méthode Java permettant, à partir d'un tableau T1 de N nombres, de
construire deux tableaux T2 et T3:
- T2 contenant tous les éléments pairs de T1,
- T3 contenant tous les éléments impairs de T1.
La méthode doit ensuite trier en ordre croissant T2 par la méthode du tri par
insertion et T3 par la méthode du tri à bulles.
Et enfin, la méthode doit fusionner les tableaux T2 et T3 afin d'obtenir un
tableau trié par ordre croissant.
Remarque : le tableau ainsi obtenu n'est autre que le tableau initial trié par
ordre croissant.
public void ex3()
Marjorie Russo
2001-04-18