X-Git-Url: https://git.piment-noir.org/?p=TP_POO.git;a=blobdiff_plain;f=Entiers%2FEntiers.java;h=fe92652e5c739ef5d7be92d6c340c4aa86138fdf;hp=752546b193264b2afb3923299edbbd79976d3201;hb=5618db56bb713af20d222bee474e68104fcca041;hpb=bc48a28596ee8602a6872379df217cc83a306470 diff --git a/Entiers/Entiers.java b/Entiers/Entiers.java index 752546b..fe92652 100644 --- a/Entiers/Entiers.java +++ b/Entiers/Entiers.java @@ -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()); - } }