Merge branch 'master' of git.piment-noir.org:TP_POO
[TP_POO.git] / Entiers / Entiers.java
index 752546b193264b2afb3923299edbbd79976d3201..fe92652e5c739ef5d7be92d6c340c4aa86138fdf 100644 (file)
@@ -31,7 +31,12 @@ class Entiers {
             System.out.println("Tableau plein");
             return false;
         }
-        //FIXME: Avoid duplicated values
+        int pos = binarySearch(0, getCurrentSize(), value);
+        if (pos != -1)
+        {
+            System.out.println("Valeur à inserer déjà présente");
+            return false;
+        }
         int i;
         for (i = getCurrentSize() - 1; (i >= 0 && int_array[i] > value); i--) {
             int_array[i + 1] = int_array[i];
@@ -47,7 +52,7 @@ class Entiers {
         int middle = (first + last) / 2;
         if (value == int_array[middle])
             return middle;
-        if (value > int_array[middle])
+        else if (value > int_array[middle])
             return binarySearch((middle + 1), last, value);
         return binarySearch(first, (middle -1), value);
     }
@@ -121,6 +126,5 @@ class Entiers {
         integer.afficher();
         System.out.println("Current size " + integer.getCurrentSize());
 
-
     }
 }