Exercice18_PerfoCollectionsRetourTélécharger Exercice de comparaison des performances des collections. Exercice18.pdf compil.bat mkdir bin del /f /s /q bin\*.class cd src javac -d ../bin -classpath "." *.java pause run.bat cd bin java -classpath "." Exercice18 pause src Exercice18.java import java.util.*; public class Exercice18 { public static void main(String... args) { int MAX = 10000000; Temps.debut(); ArrayList<Integer> tab = new ArrayList<Integer>(); for(int i=0;i<MAX;i++) tab.add(i); Temps.fin("Ajout dans ArrayList"); Temps.debut(); HashSet<Integer> set = new HashSet<Integer>(); for(int i=0;i<MAX;i++) set.add(i); Temps.fin("Ajout dans HashSet"); // rechercher une valeur qui n'existe pas Integer x = new Integer(-1); int fois=1000; Temps.debut(); for(int i=0;i<fois;i++) tab.contains(x); Temps.fin("Recherche "+fois+" fois dans HashTable"); fois=100000; Temps.debut(); for(int i=0;i<fois;i++) set.contains(x); Temps.fin("Recherche "+fois+" fois dans HashSet"); // rechercher une valeur qui existe x = new Integer(MAX-1); fois=1000; Temps.debut(); for(int i=0;i<fois;i++) tab.contains(x); Temps.fin("Recherche "+fois+" fois dans HashTable"); fois=100000; Temps.debut(); for(int i=0;i<fois;i++) set.contains(x); Temps.fin("Recherche "+fois+" fois dans HashSet"); } } class Temps { static private long timeMillisec; public static void debut() { timeMillisec = System.currentTimeMillis(); } public static long fin(String s) { timeMillisec=System.currentTimeMillis()-timeMillisec; System.out.println(String.format("%s : %d ms\n",s,timeMillisec)); return timeMillisec; } public static long fin() { timeMillisec=System.currentTimeMillis()-timeMillisec; return timeMillisec; } } fr cnam util