TD numéro 1 du tronc commun en informatique 1998-99 dirigé
par Serge Vaudenay et
David Pointcheval.
Manipulation de Tableaux
-
Ecrire un programme
Affiche.java qui prend un nombre
arbitraire d'arguments entiers et qui affiche n fois un argument
de valeur n.
Par exemple, la commande
Affiche 3 1 0 4
doit afficher
3 3 3 1 4 4 4 4
[corrigé]
-
Quelques méthodes utiles dans la suite.
-
Faire une méthode
public static int[] chaineVersEntier(String[] chaineTab)
qui transforme un tableau de chaînes de caractères
chaineTab en tableau d'entiers.
-
Faire une méthode
public static void afficheEntierTab(int[] entierTab)
qui affiche sur une seule ligne un tableau d'entiers.
-
Faire une méthode
public static int[] copieEntierTab(int[] entierTab)
qui retourne un tableau d'entiers identique à entierTab.
[corrigé]
-
Faire une méthode
renverse(int[] entierTab)
qui renverse l'ordre des éléments d'un tableau
entierTab (sans créer de tableau auxiliaire).
[corrigé]
-
Faire une méthode
estPermutation(int[] perm)
qui admet comme argument un tableau perm et qui vérifie
qu'il définit une permutation des entiers entre 0 et n-1
où n=perm.length
(autrement dit, que toutes les entrées sont comprises entre ces bornes
et représentées une et une seule fois).
Faire une méthode de complexité O(n).
Faire une méthode qui engendre une permutation aléatoire de
n éléments de complexité O(n).
On pourra se servir des méthodes
de l'exercice 2.
[corrigé]
-
Etant donnée une permutation, écrire une méthode qui donne
la liste de ses cycles ainsi que sa parité.
[corrigé]