• Aucun résultat trouvé

Exercices Présentation PARIS DIDEROT .

N/A
N/A
Protected

Academic year: 2022

Partager "Exercices Présentation PARIS DIDEROT ."

Copied!
2
0
0

Texte intégral

(1)

INITIATION À LAPROGRAMMATION(IP2) TD7 : Listes doublement chaînées

université PARIS . DIDEROT

PARIS 7

Présentation

On va considérer des listes doublement chaînées d’entiers. Pour cela, on utilise les deux classes suivantes :

public class Liste{

private Cellule debut;

public Liste(){

debut = null;

} }

public class Cellule{

private int valeur;

private Cellule suivante;

private Cellule precedente;

public Cellule(int valeur, Cellule suivante, Cellule precedente){

this.valeur = valeur;

this.suivante = suivante;

this.precedente = precedente;

} }

Exercices

Complétez les deux classes ci-dessous de telle manière que la classe Liste possède les méthodes suivantes :

1. la méthode itérative boolean verifierStructure() qui vérifiera que les valeurs des attri- buts precedentesoient cohérentes avec une structure de liste doublement chaînée.

2. la méthodeajouterDebut(int val) qui ajoute une Cellule de valeur val au début de la liste. La méthode deListeappellera le cas échéant une méthodeCellule ajouterDebut(int val) dansCellule.

3. la méthode itérative afficheAR() qui affichera les entiers de la liste d’abord dans l’ordre puis dans l’ordre inverse. Par exemple, la liste [10,5,8] s’affichera [10, 5, 8: 8, 5, 10].

4. la méthode récursiveajouterA(int indice, int val)qui ajoute une cellule de valeurval à la position indice. (On rappelle que la première cellule est en position 0). Si l’indice ne correspond pas à une position correcte, on ne fait rien.

5. la méthodesupprimerDebut() qui supprime la première cellule si elle existe.

6. la méthode récursivesupprimerA(int indice)qui supprime la cellule à la positionindice.

Si l’indice ne correspond pas à une position correcte, on ne fait rien.

1

(2)

7. la méthode itérative concatener(Liste l) qui concatène la liste l à la liste this. Cette méthode ne fait pas de copie de listes, elle modifiera donc thiset éventuellement l. Que se passe-t’il si on concatène une liste ayant au moins un élément avec elle-même ?

8. (facultatif) la méthode récursiverenverser() qui renverse la liste chaînée.

9. (facultatif) la méthode itérativeeliminer(int val)qui élimine toutes les cellules de valeur val.

Une méthode de tri (facultatif ) Écrivez les méthodes itératives suivantes

1. boolean estTrie() qui retournetruesi les entiers de la liste sont en ordre croissant.

2. void unePasse() qui parcourt la liste et échange les couples de cellules consécutives qui ne sont pas dans le bon ordre. Exemple : Si j’applique unePasse à la liste [10,4,5,13,8] on obtient la liste [4,5,10,8,13]. En effet, on a échangé d’abord les cellules de valeurs 10 et 4 à la position 0, puis celles de valeurs 10 et 5 à la position 1, on ne fait rien à la position 3 (valeurs 10 et 13) et on échange les cellules de valeurs 13 et 3 à la position 4.

3. Maintenant faites une méthode qui trie une liste en faisant des passes d’échange jusqu’à ce que la liste soit triée.

4. Comment éviter de faire à chaque fois un parcours pour les échanges et un autre pour les vérifications ?

2

Références

Documents relatifs

Le Conseil communautaire, après en avoir délibéré, 57 voix pour, 9 voix d’abstention (Madame Aude BRISTOT ; Monsieur André CANAS ; Monsieur Christophe CARRERE ; Monsieur

L'EuroVélo 3 ou Scandibérique est une voie cyclable de 5 122 km qui traverse 7 pays européens, reliant Trondheim en Norvège à Saint-Jacques de Compostelle en Espagne.. Son

[Plantes exotiques ponctuellement présentes en région Centre-Val de Loire, mais reconnues comme invasives avérées dans des régions limitrophes ou dont le risque

- pour prioriser la liste d’alerte en se basant sur le pool des espèces subspontanées/plantées en Centre-Val de Loire et sur le pool des espèces invasives dans les

Cela peut se faire aussi dans le menu courant avec. la commande : {x 1 ,...,x n } Ñ List 1 On peut l’afficher dans le menu courant en

que la phrase ne omporte pas d'aent (phrase en anglais par exemple), testez

Date Collecte Libellé Ensemble Lieux Adresse Code Postal Ville Début Matin Fin Matin Début Après-midi Fin Après-midi. 01/12/2021 EVRY-UNIVERSITE BATIMENT MAUPERTUIS

C'est un trou de verdure où chante une rivière, Accrochant follement aux herbes des haillons D'argent ; où le soleil de la montagne fière, Luit : c'est un petit val qui mousse