/*
Datei............: Aufg0720.java
Projekt..........: Einführung in die Java-Programmierung
Erstellt.........: 02.11.97, Guido Krüger
Geändert.........: --
Aufgabe..........: Musterlösung zu Aufgabe 07.20
Kommentare.......:

Der rekursive Lösungsansatz sieht so aus:

Das größte Element einer Liste ist

- das einzige Listenelement, falls die Liste nur ein Element hat,
- das Maximum aus letztem Element und der um dem Maximum der
  um das letzte Element verkürzten Liste.

Diese Aufgabenstellung ist ein typisches Beispiel für
rekursive Lösungsansätze. Ein Problem der Größe n (n > 1)
wird schrittweise auf den Trivialfall n = 1 reduziert. Das
Ergebnis ergibt sich durch geschickte Kombination der 
Teillösungen.
*/

public class Aufg0720
{
  public static void main(String args[])
  {
	int data[] = {5, 7, 10, 4, -4, -5, 0, 0, 20, 20, 21, 3, -100};
	System.out.println("max = " + max(data, data.length));
  }

  static int max(int data[], int elements)
  {
	if (elements <= 1) {
	  return data[0];
	}
	return Math.max(data[elements - 1], max(data, elements - 1));
  }
}


