1 / 17

TD1

Algo-Prog e n Ada. TD1. 2 MIC. Romaric GUILLERM. guillerm@laas.fr. http://romaric.guillerm.free.fr. TD1 Pointeurs et Listes chaînées. L istes simplement chaînées :. TD1. Exercice 1 : Listes identiques On considère des listes simplement chaînées .

cwen
Télécharger la présentation

TD1

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Algo-Prog en Ada TD1 2 MIC Romaric GUILLERM guillerm@laas.fr http://romaric.guillerm.free.fr

  2. TD1Pointeurs et Listes chaînées Listes simplement chaînées:

  3. TD1 • Exercice 1 : Listes identiques On considère des listes simplement chaînées. Deux listes sont dites identiques si elles sont toutes les deux vides ou si elles contiennent les mêmes valeurs dans le même ordre. • Ecrire une fonction booléenne récursive qui teste si 2 listes données sont identiques.

  4. TD1 • Exercice 2 : Suppression des occurrences multiples dans une liste On considère toujours des listes simplement chaînées. • Ecrire un sous-programme supprimant d'une liste toutes les occurrences multiples de chaque valeur (on obtient donc une liste contenant une seule occurrence de chaque valeur).

  5. TD1 • Exercice 2 itératif

  6. TD1 • Exercice 2 itératif

  7. TD1 • Exercice 2 récursif

  8. TD1 • Exercice 2 récursif

  9. TD1 • Exercice 3 : Insertions et suppressions dans une liste doublement chaînée On considère des listes doublement chaînées. • 3.1.a Quel est l'intérêt essentiel d'une liste doublement chaînée par rapport à une liste simplement chaînée ?  Parcours possible dans les deux sens ! • 3.1.b On désire construire une liste doublement chaînée à l'aide de 2 sous‐programmes d'insertion permettant respectivement : • d'insérerun nouvel élément en début de liste ; • d'insérerun nouvel élément en fin de liste. Proposer une structure de données permettant de modéliser une liste d'entiers doublement chaînée et telle que les algorithmes d'insertion en début et en fin n'effectuent aucun parcours de la liste.

  10. TD1 • Exercice 3 : Insertions et suppressions dans une liste doublement chaînée • 3.2 Identifier les différents cas à prendre en compte pour l'insertion d'un nouvel élément en début de liste,puis écrire le sous‐programme d'insertion en début de liste.

  11. TD1 • Exercice 3 : Insertions et suppressions dans une liste doublement chaînée • 3.2 Identifier les différents cas à prendre en compte pour l'insertion d'un nouvel élément en début de liste,puis écrire le sous‐programme d'insertion en début de liste.

  12. TD1 • Exercice 3 : Insertions et suppressions dans une liste doublement chaînée • 3.3Même question pour le sous‐programme d'insertion en fin de liste.

  13. TD1 • Exercice 3 : Insertions et suppressions dans une liste doublement chaînée • 3.4Identifier les différents cas à prendre en compte pour la suppressiondu premier élément d'une liste,puis écrire le sous‐programme de suppression.

  14. TD1 • Exercice 3 : Insertions et suppressions dans une liste doublement chaînée • 3.5Même question pour le sous‐programme de suppression du dernier élément d'une liste.

  15. TD1 • Exercice 3 : Insertions et suppressions dans une liste doublement chaînée • 3.6Ecrire un sous‐programme de suppression d'un entier donné dans une liste. Ce sous‐programme doit lever une exception Element_Inexistant si l'entier à supprimer n'appartient pas à la liste.

  16. TD1 • Exercice 3 : Insertions et suppressions dans une liste doublement chaînée • 3.7Concevoir un scenario permettant d'effectuer tous les cas de tests des sous‐programmes d'insertion et de suppression réalisés précédemment.

  17. Travailler à la maison !avec Windows • Compilateur Ada GNAT : http://romaric.guillerm.free.fr • Pour écrire le programme (fichier.adb): Bloc Note, Emacs… ou : Notepad++ • Pour compiler et exécuter :

More Related