Existe-t-il un moyen d'optimiser la vitesse des insertions dans une java.util.Collection en spécifiant l'ordre des éléments?Optimisation de la vitesse d'insertion dans java.util.Map/Set
Par exemple
java.util.Set<String> set = java.util.TreeSet<String>();
sera cette solution:
set.add("A");
set.add("B");
set.add("C");
set.add("D");
set.add("E");
plus rapide que celui-ci (ordre aléatoire)?
set.add("E");
set.add("D");
set.add("C");
set.add("A");
set.add("B");
(et la même question pour les autres collections: HashMap, hastable ...)
Merci
Pré-trié conduit généralement à beaucoup de déséquilibre, il est donc très probable que le pire des cas. – starblue
Je suis d'accord, si vous essayiez de l'accélérer, il serait préférable de trier la liste, de trouver la médiane, puis d'insérer dans les deux directions à partir de la médiane. Aucun réordonnancement de sous-arbre ne serait nécessaire à ce stade. – Nick
Mais le tri prendra plus de temps que ce qui sera gagné plus tard. En fin de compte, tout cela est une micro-optimisation inutile. – starblue