diff --git a/src/main/java/com/thealgorithms/searches/LinearSearch.java b/src/main/java/com/thealgorithms/searches/LinearSearch.java index 00fb9c2d0fcf..77ecece3aaef 100644 --- a/src/main/java/com/thealgorithms/searches/LinearSearch.java +++ b/src/main/java/com/thealgorithms/searches/LinearSearch.java @@ -14,6 +14,7 @@ package com.thealgorithms.searches; import com.thealgorithms.devutils.searches.SearchAlgorithm; + /** * Linear Search is a simple searching algorithm that checks * each element of the array sequentially until the target @@ -33,7 +34,6 @@ * @see BinarySearch * @see SearchAlgorithm */ - public class LinearSearch implements SearchAlgorithm { /** @@ -45,14 +45,17 @@ public class LinearSearch implements SearchAlgorithm { */ @Override public > int find(T[] array, T value) { - if (array == null || array.length == 0) { + + if (array == null || array.length == 0 || value == null) { return -1; } + for (int i = 0; i < array.length; i++) { - if (array[i].compareTo(value) == 0) { + if (array[i] != null && array[i].compareTo(value) == 0) { return i; } } + return -1; } }