:: Enseignements :: Licence :: L3 :: 2007-2008 :: Programmation Objet avec Java ::
[LOGO]

Set, implantations de liste


Exercice 1 - Ensemble et Bag

  1. Ecrire un programme indiquant quels sont les mots qui se trouvent sur la ligne de commande, on affichera les doublons une unique fois.
          java Unique toto tutu toto titi tutu
        
    • Dans un premiers temps, afficher "toto", "titi" et "tutu" dans n'importe quel ordre.
    • Ensuite, afficher "toto", "tutu" "titi" dans cet ordre, c-a-d l'ordre d'insertion.
    • Enfin, afficher "titi", "toto", "tutu" dans cet ordre, c-a-d l'ordre lexicographique.
  2. Ecrire un second programme pour qu'il compte le nombre de fois qu'un mot apparait sur sa ligne de commande et affiche chaque mot suivi de son nombre d'occurence.
    N.B : penser à faire des fonctions assez générales et si possible utilisables avec autre chose que des String.

Exercice 2 - Performance sur les listes

Le but de cet exercice est de tester les différences de performance entre les classes ArrayList et LinkedList sur différents algorithmes.

  1. Nous allons dans un premier temps chronométrer le temps d'un parcours d'une ArrayList contenant un million (1 000 000) d'entiers en utilisant un Iterator (pour le parcours).
    Utilisez la méthode System.nanoTime() pour effectuer une mesure de temps.
  2. Modifier votre programme pour pouvoir facilement chronométrer le parcours dans le cas d'une ArrayList ou d'une LinkedList avec le même code.
Effectuer les tests suivants sur les deux implémentations de List : Comparer les différents résultats et expliquer les différences.