(Linear Search) Algoritam linearnog pretraživanja u Java: Istraživanje i pronalaženje elemenata

Algoritam linearnog pretraživanja jednostavna je i temeljna metoda u Java programiranju koja se koristi za pronalaženje određenog elementa unutar popisa ili niza. Ovaj pristup funkcionira tako da svaki element prelazi i uspoređuje s vrijednošću pretraživanja.

Kako radi algoritam linearnog pretraživanja

Algoritam linearnog pretraživanja počinje od prvog elementa popisa ili polja. Uspoređuje traženu vrijednost s vrijednošću trenutnog elementa. Ako se pronađe odgovarajuća vrijednost, algoritam vraća položaj elementa na listi ili nizu. Ako nije pronađen, algoritam se nastavlja kretati do sljedećeg elementa i nastavlja proces usporedbe dok se vrijednost ne pronađe ili dok se ne prijeđu svi elementi.

Prednosti i nedostaci algoritma linearnog pretraživanja

Prednosti:

  • Jednostavan i razumljiv: ovaj algoritam je lako implementirati i razumjeti.
  • Radi s bilo kojom vrstom podataka: Linearno pretraživanje može se primijeniti na bilo koju vrstu podataka popisa ili polja.

Nedostaci:

  • Niska izvedba: ovaj algoritam zahtijeva prolazak kroz sve elemente na popisu ili nizu, što može dovesti do niske izvedbe za velike skupove podataka.

Primjer i objašnjenje

Razmotrite primjer korištenja algoritma linearnog pretraživanja za pronalaženje određenog cijelog broja u nizu cijelih brojeva u Java.

public class LinearSearchExample {  
    public static int linearSearch(int[] array, int target) {  
        for(int i = 0; i < array.length; i++) {  
            if(array[i] == target) {  
                return i; // Return position if found  
            }  
        }  
        return -1; // Return -1 if not found  
    }  
  
    public static void main(String[] args) {  
        int[] numbers = { 4, 2, 7, 1, 9, 5 };  
        int target = 7;  
  
        int position = linearSearch(numbers, target);  
  
        if(position != -1) {  
            System.out.println("Element " + target + " found at position " + position);  
        } else {  
            System.out.println("Element " + target + " not found in the array");  
        }  
    }  
}  

U ovom primjeru koristimo algoritam linearnog pretraživanja za pronalaženje broja 7 u nizu cijelih brojeva. Algoritam prolazi kroz svaki element i uspoređuje ga s traženom vrijednošću. U ovom slučaju, broj 7 nalazi se na poziciji 2(indeks temeljen na 0) u nizu.

Iako ovaj primjer pokazuje kako algoritam linearnog pretraživanja može pronaći element u nizu cijelih brojeva, može se primijeniti i na druge scenarije pretraživanja u Java programiranju.