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.
zu den Teilaufgaben:
Statt für jedes der ca. n² Teilfelder jeweils eine eigene Schleife mit O(n) laufen zu lassen, um dessen Summe zu ermitteln, kann man in einer der beiden ohnehin vorhandenen Zählschleifen für die Indizes (lower
und upper
) die Summe direkt mitzählen. Die innerste Schleife (k-Schleife) wird dadurch überflüssig.
Parameter: Array A, Arraylänge n
Rückgabewert: Wert der maximalen Teilsumme
Siehe Quellcode: Loesung62c.java