import java.util.*; public class Main { public static ArrayDeque scinder(ArrayDeque file) { ArrayDeque nouveaufile = new ArrayDeque<>(); for (int i = 0; i < file.size() / 2; i++) { nouveaufile.add(file.poll()); } return nouveaufile; } public static ArrayDeque fusionner(ArrayDeque fileun, ArrayDeque filedeux) { ArrayDeque fusionnee = new ArrayDeque<>(); while (!fileun.isEmpty() && !filedeux.isEmpty()) { if (fileun.peek() <= filedeux.peek()) { fusionnee.add(fileun.poll()); } else { fusionnee.add(filedeux.poll()); } } fusionnee.addAll(fileun); fusionnee.addAll(filedeux); return fusionnee; } public static ArrayDeque trier(ArrayDeque file) { if (file.size() <= 1) { return file; } ArrayDeque fileun = scinder(file); ArrayDeque filedeux = new ArrayDeque<>(file); filedeux.removeAll(fileun); fileun = trier(fileun); filedeux = trier(filedeux); return fusionner(fileun, filedeux); } public static void main(String[] args) { ArrayDeque file = new ArrayDeque<>(); for (String arg : args) { file.add(Float.parseFloat(arg)); } file = trier(file); for (Float f : file) { System.out.println(f); } } }