Information

Author(s) Ludovic TAFFIN, Olivier Martin
Deadline Geen deadline
Submission limit No limitation

Sign in

Mission 11 : Q** List

Une liste est une structure de données permettant de stocker des objets. Les objets sont ajoutés à la liste via sa tete. Elle supporte trois commandes : ajout pour ajouter un objet à la liste retire pour retirer un élément se trouvant dans la liste contient pour voir si un objet se trouve dans la liste

On vous donne la classe Liste incomplète suivante :

/**
 * Une liste représentée sous la forme d'une structure chaînée
 *
 * @author O. Bonaventure
 * @version Décembre 2016
 */
public class Liste {

   // une classe interne représentant un noeud de la liste
    private class Noeud {
        Object element;
        Noeud suivant;

        public Noeud(Object o, Noeud n) {
            element = o;
            suivant = n;
        }
    }

    private Noeud tete; // le début de la liste

   /*
    * @pre -
    * @post a initialisé une liste vide
    */
    public Liste() {
        tete = null;
    }

   /**
    * @pre o != null
    * @post ajoute l'objet à la liste
    */
    public void ajoute(Object o) {
        // Code non fourni
    }

   /*
    * @pre o != null
    * @post retourne true si l'objet o se trouve dans la liste, false sinon
    */
    public boolean contient(Object o) {
        // Question 1
    }

   /**
    * @pre o != null
    * @post retire toutes les copies de l'objet o de la liste.
    *       Retourne le nombre d'objets qui ont été retiré de la liste
    *       (0 si l'objet o n'était pas présent dans la liste)
    */
    public int retire(Object o) {
        // Question 2
    }
}

Complétez cette classe.


Question 1: Contient

Ecrivez le corps de la méthode contient

Question 2: Retire

Ecrivez le corps de la méthode retire