Reprenez la classe
Rationnel
. Vous encapsulerez le numérateur, le
dénominateur, et vous utiliserez un constructeur pour initialiser les
champs privés. Vous prendrez ensuite le soin de modifier les corps des
méthodes de sorte que la classe compile et fonctionne correctement.
Complétez le code ci-dessous :
package encapsulation; public class Pile { /* * Tableau contenant les elements de la pile. */ private int[] tab; /* * Taille de la pile */ private final int taille; /* * Indice du premier element non occupe dans le tableau. */ private int firstFree; /* * Constructeur */ Pile(int taille) { this.taille = 0; } /* * Constructeur de copie */ Pile(Pile other) { this(other.taille); } /* * Retourne vrai si et seulement si la pile est vide */ public boolean estVide() { return true; } /* * Retourne vrai si et seulement si la pile est pleine. */ public boolean estPleine() { return true; } /* * Retourne l'element se trouvant au sommet de la pile, -1 si la pile est * vide. */ public int sommet() { return 0; } /* * Supprime l'element se trouvant au sommet de la pile, ne fait rien si la * pile est vide. */ public void depile() { } /* * Ajoute data en haut de la pile, ne fait rien si la pile est pleine. */ public void empile(int data) { } /* * Retourne une representation de la pile au format chaine de caracteres. */ public String toString() { return null; } /* * Teste le fonctionnement de la pile. */ public static void main(String[] args) { Pile p = new Pile(30); int i = 0; while (!p.estPleine()) p.empile(i++); System.out.println(p); while (!p.estVide()) { System.out.println(p.sommet()); p.depile(); } } }
Instanciez un objet de type
ArrayList<>
en utilisant le
type de votre choix. Placez-y des valeurs
quelconques, et parcourez-le en affichant ses valeurs.
for
Même exercice en utilisant la boucle
for
simplifiée.
Écrire une procédure inversant l’ordre des éléments d’un
ArrayList<Integer>
. Ne pas utiliser la méthode reverse().
Écrire une procédure triant un
ArrayList<Integer>
.
Implémentez les classes suivantes :
Re-téléchargez le fichier
Pile.java
, et sans modifier les
méthodes publiques, implémentez la pile en utilisant
des (
ArrayList
).
Complétez le code ci-dessous :
package encapsulation; public class ListeInt { /* * Donnee stockee dans le maillon */ private int data; /* * Pointeur vers le maillon suivant */ private ListeInt next; /* * Constructeur initialisant la donnee et le pointeur vers l'element * suivant. */ ListeInt(int data, ListeInt next) { } /* * Constructeur initialisant la donnee et mettant le suivant a null. */ ListeInt(int data) { } /* * Constructeur recopiant tous les maillons de other. */ ListeInt(ListeInt other) { } /* * Retourne la donnee. */ public int getData() { return 0; } /* * Modifie la donnee */ public void setData(int data) { } /* * Retourne le maillon suivant. */ public ListeInt getNext() { return null; } /* * Modifie le maillon suivant */ public void setNext(ListeInt next) { } /* * Retourne une représentation sous forme de chaine de la liste. */ public String toString() { return null; } /* * Teste le fonctionnement de la liste. */ public static void main(String[] args) { ListeInt l = new ListeInt(20); int i = 19; while (i >= 0) l = new ListeInt(i--, l); System.out.println(l); } }
Re-téléchargez le fichier
Pile.java
, et sans modifier les
méthodes publiques, implémentez la pile en utilisant des listes
chaînées (
ListeInt
).