Bonjour,
je vous expose mon "soucis" qui n'en est pas vraiment un.
En fait, je dois réaliser un exercice dit "avancé" en Java, mais je ne suis qu'un débutant dans ce language. Je dois renvoyer ce code ce soir à mon maitre de stage pour discuter avec lui dudit code, ce qui me permettrait d'être engagé dans la boite. On y fait principalement du html/css/javascript,que je maîtrise, mais il cherche une personne pouvant apporter en + une certaine connaissance en Java.
Donc, je voudrais vous poster l'exercice, et voir vos solutions, je pense que ca ne vous prendrait que quelques minutes. De mon coté, je tente une version, qui à mon avis sera moins optimisée que la vôtre.
Voici l'exercice en question:
Exercice JAVA avancé
Les classes standards « Vector » et « ArrayList » permettent d'utiliser les listes simples, de dimension variable. Elles sont basées sur l'utilisation cachée d'un tableau d'objets (Object array[]) qui grandit au fur et à mesure des besoins de la liste, avec une variable gardant la taille réellement
utilisée, et par saut, afin de ne pas récréer un nouveau tableau à chaque insertion. Vous pouvez examiner l'implémentation de la classe
« java.util.Vector ».
Elles présentent toutefois un problème car le tableau sous-jacent ne décroit jamais. Si à un moment le tableau contient 10000 éléments, le tableau ne descendra pas en dessous de cette taille, même si par la suite il n'en contient plus que 100.
Ecrire une classe IntList qui s'adapte de façon élégante à l'ajout et à la suppression d'éléments (de type int), avec un tableau d'entier comme stockage et le squelette suivant:
Merci d'avance pour votre aide!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45 Class IntList { private int list[]; ... /** * Retourne le nombre d'éléments contenus dans la liste */ public int size() {...} /** * ajoute l'élément i à la fin */ public void add(int i) {...} /** * Insère l'élément i à la position index */ public void insertElementAt(int i,int index) {...} /** * Vide la liste */ public void clear() {...} /** * Retire l'élément à la position index */ public int removeElementAt(int index) {...} /** * Retourne la position de l'élément i dans la liste ou -1 */ public int indexOf(int i) {...} /** * Insère true si i est dans la liste, faux sinon */ public boolean contains(int i) {...} /** * Retourne l'élément à la position index */ public int get(int index) {...} /** * Retourne une String qui décrit le contenu de la liste */ public String toString() {...} /** * Trie la liste dans l'ordre croissant */ public void sort() {...} }
Partager