Considérons certains long
appelés X
et une List
sortingée List
. Quel est l’algorithme le plus efficace pour trouver l’indice ou la valeur dans la List
qui est (i) inférieur à X
et (ii) le plus proche de X
sur la droite numérique (en supposant que la condition (i) a été définie)?
Par exemple, cela pourrait être un problème d’installation:
long X = 500; List foo = new Arraylist(); foo.add(450L); foo.add(451L); foo.add(499L); foo.add(501L); foo.add(550L); Collections.sort(foo); // It's always sorted.
Je voudrais que l’algorithme retourne 499
ou renvoie l’index associé à 499
(dans ce cas, i=2
).