diff --git a/src/main/java/fr/univamu/sorting/App.java b/src/main/java/fr/univamu/sorting/App.java index 40c78d1a84da56424b6fdf4133993096f2f16161..e69b1e020007fe18326a6f7e74c7e72c756ef257 100644 --- a/src/main/java/fr/univamu/sorting/App.java +++ b/src/main/java/fr/univamu/sorting/App.java @@ -7,6 +7,8 @@ public class App { public static void main(String[] args) { List<Integer> shuffled = IntLists.shuffledRange(0,1000); + SortableIntList sortableIntList = new SortableIntList(shuffled); + sortableIntList.sort(); System.out.println( shuffled.stream() .map(String::valueOf) diff --git a/src/main/java/fr/univamu/sorting/Sort.java b/src/main/java/fr/univamu/sorting/Sort.java new file mode 100644 index 0000000000000000000000000000000000000000..afba558e8fcf444fea4841c64bb520f4ac422cce --- /dev/null +++ b/src/main/java/fr/univamu/sorting/Sort.java @@ -0,0 +1,18 @@ +package fr.univamu.sorting; + +public class Sort { + public void sort(){ + bubbleSort(); + } + public void bubbleSort(){ + + for( int i=0; i< data.size()-1; i++){ + for(int j=0 ; j< data.size()-1-i; j++){ + if(compare(j,j+1)>0){ + Swap(j,j+1); + } + } + } + } + +} diff --git a/src/main/java/fr/univamu/sorting/SortableIntArray.java b/src/main/java/fr/univamu/sorting/SortableIntArray.java new file mode 100644 index 0000000000000000000000000000000000000000..cab24626a255b1f948bdfcb5a7cda2b39b96b3c7 --- /dev/null +++ b/src/main/java/fr/univamu/sorting/SortableIntArray.java @@ -0,0 +1,24 @@ +package fr.univamu.sorting; + +import java.util.List; + +public class SortableIntArray { + private int[]data; + public SortableIntArray(int [] data){ + this.data = data; + } + + public void Swap (int index1, int index2){ + Integer x = data[index1]; + data[index1] = data[index2]; + data[index2]= x; + } + + public int compare(int index1, int index2){ + return data[index1]- data[index2]; + } + + public int size() { + return data.length; + } +} diff --git a/src/main/java/fr/univamu/sorting/SortableIntList.java b/src/main/java/fr/univamu/sorting/SortableIntList.java new file mode 100644 index 0000000000000000000000000000000000000000..ffcf935a1cbd10e7664ea0cf1911fab83f43b563 --- /dev/null +++ b/src/main/java/fr/univamu/sorting/SortableIntList.java @@ -0,0 +1,43 @@ +package fr.univamu.sorting; + +import java.util.List; + +public class SortableIntList { + private List<Integer> data; + public SortableIntList(List<Integer> data){ + this.data = data; + } + + public void Swap (int index1, int index2){ + Integer x = data.get(index1); + data.set(index1, data.get(index2)); + data.set(index2, x); + } + + public int compare(int index1, int index2){ + return data.get(index1)- data.get(index2); + } + + public int size(){ + return data.size(); + } + public int get(int index){ + return data.get(index); + } + + public void sort(){ + bubbleSort(); + } + public void bubbleSort(){ + + for( int i=0; i< data.size()-1; i++){ + for(int j=0 ; j< data.size()-1-i; j++){ + if(compare(j,j+1)>0){ + Swap(j,j+1); + } + } + } + } + + +}