29 Novembre
This commit is contained in:
BIN
DEV3.2/TP5/Fusion/Main.class
Normal file
BIN
DEV3.2/TP5/Fusion/Main.class
Normal file
Binary file not shown.
55
DEV3.2/TP5/Fusion/Main.java
Normal file
55
DEV3.2/TP5/Fusion/Main.java
Normal file
@@ -0,0 +1,55 @@
|
||||
import java.util.*;
|
||||
|
||||
public class Main{
|
||||
|
||||
public static ArrayDeque<Float> scinder(ArrayDeque<Float> file){
|
||||
ArrayDeque<Float> nouveaufile = new ArrayDeque(file.size()/2);
|
||||
|
||||
for (int i=0; i<(file.size()/2); i++){
|
||||
nouveaufile.add(file.poll());
|
||||
}
|
||||
|
||||
return nouveaufile;
|
||||
}
|
||||
|
||||
public static ArrayDeque<Float> fusionner(ArrayDeque<Float> fileun, ArrayDeque<Float> filedeux){
|
||||
|
||||
for (int i=0; i<(filedeux.size()); i++){
|
||||
fileun.add(filedeux.poll());
|
||||
}
|
||||
|
||||
return fileun;
|
||||
}
|
||||
|
||||
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));
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
ArrayDeque<Float> file = new ArrayDeque(args.length);
|
||||
|
||||
for (int i=0; i<args.length; i++){
|
||||
file.add(Float.parseFloat(args[i]));
|
||||
}
|
||||
|
||||
file=trier(file);
|
||||
|
||||
for (int i=0; i<args.length; i++){
|
||||
System.out.println(""+file.poll()+"\n");
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user