This commit is contained in:
2024-11-27 11:35:15 +01:00
parent 467af38a01
commit d39124f928
21 changed files with 902 additions and 56 deletions

Binary file not shown.

View File

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