Zum Menü springen.

Übungsblatt 6: Maximum–Sub-Array, brute force

Aufgabe 6-1*

Schreiben Sie eine Methode zur Lösung des Maximum–Sub-Array–Problems im naïven Verfahren (brute force). Ihre Methode soll einen Array des Typs int[] als Parameter akzeptieren und die maximale Teilsumme dieses Arrays zurückgeben.

Aufgabe 6-2

Finden Sie einen „halb-naïven“ Lösungsalgorithmus, der ebenfalls im Brute-Force–Verfahren arbeitet, jedoch durch Einsparen einer Schleife eine Zeitkomplexität von O(n²) statt O(n³) erreicht.

  1. Nennen Sie den entscheidenden Unterschied zum naïven Algorithmus aus Aufgabe 6-1.
  2. Implementieren Sie diesen Algorithmus in sog. „natürlicher Sprache“ entsprechend den Vorlesungsunterlagen der vergangenen Semester.
  3. Implementieren Sie diesen Algorithmus in Java.

Zusatzaufgabe 6-3

Erweitern Sie die Klasse, die Ihre Lösung zu Aufgabe 6-1 enthält, zu einem ausführbaren Programm. Schreiben Sie dazu eine Methode mit der Signatur public static void main (String[]) zum Testen der Klasse. Die main-Methode muss:
$Id: HEADER.html,v 1.2 2008/06/04 12:37:32 aj3 Exp $
Icon  Name                                   Last modified      Size  Description
[DIR] Parent Directory - [HTM] HEADER.html 2023-10-11 10:00 1.9K [TXT] Loesung61.java 2023-10-11 10:00 1.5K [HTM] Loesung62.html 2023-10-11 10:00 3.6K Lösungsvorschlag zu Aufgabe 6-2 (a), (b) – Tutorium Algorithmen und Datenstrukturen – SS 2008 [TXT] Loesung62c.java 2023-10-11 10:00 1.5K [TXT] Loesung63.java 2023-10-11 10:00 1.4K [TXT] RandomisedArrayFactory.java 2023-10-11 10:00 5.7K [HTM] README.html 2023-10-11 10:00 961