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.
 INGInious