From 67d1269db964a12a178deee8305c11db1122b917 Mon Sep 17 00:00:00 2001
From: a22027291 <Salim.adamou@etu.univ-amu.fr>
Date: Fri, 17 Nov 2023 14:59:05 +0100
Subject: [PATCH] correction de App.java et creation de SortableIntArray; de
 SortableIntList et debut de Sort.java.

---
 src/main/java/fr/univamu/sorting/App.java     |  2 +
 src/main/java/fr/univamu/sorting/Sort.java    | 18 ++++++++
 .../fr/univamu/sorting/SortableIntArray.java  | 24 +++++++++++
 .../fr/univamu/sorting/SortableIntList.java   | 43 +++++++++++++++++++
 4 files changed, 87 insertions(+)
 create mode 100644 src/main/java/fr/univamu/sorting/Sort.java
 create mode 100644 src/main/java/fr/univamu/sorting/SortableIntArray.java
 create mode 100644 src/main/java/fr/univamu/sorting/SortableIntList.java

diff --git a/src/main/java/fr/univamu/sorting/App.java b/src/main/java/fr/univamu/sorting/App.java
index 40c78d1..e69b1e0 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 0000000..afba558
--- /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 0000000..cab2462
--- /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 0000000..ffcf935
--- /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);
+                }
+            }
+        }
+    }
+
+
+}
-- 
GitLab