From a19ece9b0ca5608d36afb5eafaaf7187899b1ea6 Mon Sep 17 00:00:00 2001 From: shellhub Date: Tue, 24 Sep 2019 10:45:39 +0800 Subject: [PATCH] code readable --- Searches/BinarySearch.java | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/Searches/BinarySearch.java b/Searches/BinarySearch.java index e290cefb8..8c7e113cc 100644 --- a/Searches/BinarySearch.java +++ b/Searches/BinarySearch.java @@ -58,25 +58,23 @@ class BinarySearch implements SearchAlgorithm { int median = (left + right) >>> 1; int comp = key.compareTo(array[median]); - if (comp < 0) { + if (comp == 0) { + return median; + } else if (comp < 0) { return search(array, key, left, median - 1); - } - - if (comp > 0) { + } else { return search(array, key, median + 1, right); } - - return median; } // Driver Program public static void main(String[] args) { // Just generate data Random r = ThreadLocalRandom.current(); - + int size = 100; int maxElement = 100000; - + Integer[] integers = IntStream.generate(() -> r.nextInt(maxElement)).limit(size).sorted().boxed().toArray(Integer[]::new);