Wyszukiwanie maksymalnego elementu tablicy

Znalezienie maksymalnego elementu tablicy polega na przypisaniu do zmiennej wartości pierwszego elementu i przejściu przez pozostałe elementy tablicy. W przypadku gdy znajdziemy większy element, staje się on elementem największym. Poniżej prosta metoda znajdzMax(), która dla przekazanej jako parametr tablicy liczb całkowitych zwraca wartość maksymalną.
/**
 * Wyszukiwanie maksymalnego elementu w tablicy
 * @author kodatnik.blogspot.com 
 */ 
public class WyszukiwanieMaksimum {
 
 // metoda zwraca największy element z tablicy przekazanej jako parametr
 public static int znajdzMax(int[] wejscie) {
  
  // przypisujemy zmiennej max wartość pierwszego elementu
  int max = wejscie[0];   
  
  // sprawdzamy pozostałe elementy tablicy
  for (int i = 1; i < wejscie.length; i++) {
   // jeżeli element jest większy od dotychczasowego maksimum to on staje się maksimum
   if (wejscie[i] > max) 
    max = wejscie[i];   
  }
  
  // zwracamy wartość maksymalną
  return max;
 }
 
 // metoda wyświetla zawartość tablicy przekazanej jako parametr na ekranie
 public static void pokazTablice(int[] wejscie) {
  // każdy element znajdujący się w tablicy wyświetlamy na ekranie
  for(int x : wejscie) System.out.print (x + " ");
  System.out.println ();
 }

 public static void main(String[] args) {
  // tworzymy tablicę wypełniając ją od razu danymi
  int[] tablica = {4, 6, 1, 2, 3, 8, 7, 9, 5};
  
  // wyświetlamy tablicę na ekranie
  pokazTablice(tablica);  
  
  System.out.println ("Największy element tablicy to: " + znajdzMax(tablica));
 }
}
Uruchomiona aplikacja:
4 6 1 2 3 8 7 9 5 
Największy element tablicy to: 9
Często zamiast wartości potrzebujemy znaleźć indeks największego elementu. W przykładowym kodzie metody znajdzMax() zamiast zapamiętywać wartość największego elementu musielibyśmy zapisać indeks, na którym on się znajduje. Zmodyfikowana wersja metody poniżej.
// metoda zwraca indeks największego element z tablicy przekazanej jako parametr
 public static int znajdzMax(int[] wejscie) {
  
  // przypisujemy zmiennej max indeks pierwszego elementu
  int max = 0;   
  
  // sprawdzamy pozostałe elementy tablicy
  for (int i = 1; i < wejscie.length; i++) {
   // jeżeli element jest większy od dotychczasowego maksimum to zapamiętujemy jego indeks
   if (wejscie[i] > wejscie[max]) 
    max = i;   
  }
  
  // zwracamy indeks elementu największego
  return max;
 } 
Uruchomiona aplikacja:
4 6 1 2 3 8 7 9 5 
Indeks największego elementu tablicy to: 7
Dokładnie tak samo można znaleźć element najmniejszy. Wystarczy zmodyfikować warunek porównujący elementy ze sobą.


1 Komentarz - Wyszukiwanie maksymalnego elementu tablicy

Anonimowy pisze...

Rewelka !
Bardzo pomocne, dzięki :)

Prześlij komentarz

Możesz użyć niektórych tagów HTML, takich jak <b>, <i>, <u>, <a> Nie spamuj :)

Popularne posty