TD4-TP4 _________
1- Listes Génériques Java
.Soit l’interface Java d’une liste générique définie avec les opérations ci—
dessous :
public interface Liste
{public void ajouterentete(Object e) throws Exception;
//ajouter un Objet en tête de la liste
public void ajouterenqueue(Object e) throws Exception;
//ajouter un Objet en queue de la liste
public void ajouterieme(int r,Object e) throws Exception;
//ajouter un Objet en rième position de la liste public void supprimerentete() throws Exception;
//supprimer un Objet en tête de la liste
public void supprimerenqueue() throws Exception;
//supprimer un Objet en queue de la liste
public void supprimerieme(int r) throws Exception;
//supprimer un Objet en rième position de la liste
public void remplacertete(Object e) throws Exception;
//remplacer un Objet en tête de la liste
public void remplacerqueue(Object e) throws Exception;
//remplacer un Objet en queue de la liste
public void remplacerieme(int r,Object e) throws Exception;
//remplacer un Objet en rième postion de la liste public Object tete() throws Exception;
// objet en tête de la liste
public Object queue() throws Exception;
//objet en queue de la liste public boolean estVide();
//test de vacuité
public int longueur();
//longueur de la liste
public Object ieme(int r) throws Exception;
//ième objet dans la liste
public int pluspetitrang(Object e) throws Exception;
//plus petit rang d’ occurrence de e dans la liste public boolean appartient(Object e);
//Test d’ appartenance de e à la liste public void afficher();
//afficher le contenu de la liste
} 1.1 Donner une implantation ListeTableau de l’interface Java de la liste générique avec un tableau de taille maximum 100.
1.2 Donner une implantation ListeChainée de l’interface Java avec une liste chainée simple.
1.3 Pour ces deux implantations, écrire un programme principal qui instancie des listes d’entiers et teste quelques opérations de l’interface
2. Définir un extension Liste1 de l’interface Liste générique de 1) avec les opérations suivantes :
public Liste concat(Liste l) throws Exception;
//concaténer laliste courante avec l
public Liste souslistegauche(int r) throws Exception;
//Sosliste gauche à la position r(non compris)
public Liste souslistedroite(int r) throws Exception;
//sousliste droite à partir de la position r(compris) public Liste sousliste(int r,int s) throws Exception;
//sous liste comprise entre les positions r(non compris) et s(compris) 2.1 Donner une implantation Listableau1 de Liste1 en réutilisant l’implantation ListeTableau de 1.1.
2.2 Ecrire un programme principal qui permette de tester cette extension Liste1 pour des listes de caractères.