Hallo Menschen,
ich bin gerade nbei einer Aufgabe, bei der ich so gar nicht weiterkomme. Ich bräuchte einen kurzen Ansatz. Ich weiß nichtmal ob ich es mit Rekursion lösen soll oder iterativ.
Erstellen Sie eine Klasse Brackets und implementieren Sie darin die öffentliche statische Methode bracket(BrExIt b, String s) die eine Zeichenkette s erhält und ein String-Array aller möglichen sinnvollen Klammerungen der Zeichen von s zurück gibt Bsp: ”ab” [ab, (a)b, ((a)(b)), a(b), (ab), (a)(b), ((a)b), (a(b))]
Ist s leer oder null, so muss auch das Ergebnis ein leeres Array sein. Die Reihenfolge der Elementein der Rückgabe ist irrelevant. Wichtig aber ist, dass kein Element in der Ergebnisliste mehrmals vorkommt und dass kein Klammerpaar leer bleibt oder ein anderes Klammerpaar direkt umschließt, also z.B. nicht„()“,nicht„((a))b“ und auch nicht „(((a)(b)))“. WICHTIG: Außer der Klasse String, dürfen Sie KEINE anderen Klassen oder Methoden aus der Java-API verwenden (auch NICHT System.out, HashSet oder Arrays.copyOf)! Verwenden Sie stattdessen unbedingt die über BrExIt bereitgestellte Methode.
Das ist die Methode:
Ich weiß überhaupt nicht wo ich hier anfangen soll. Kann mir vllt jmd helfen?
Danke!
ich bin gerade nbei einer Aufgabe, bei der ich so gar nicht weiterkomme. Ich bräuchte einen kurzen Ansatz. Ich weiß nichtmal ob ich es mit Rekursion lösen soll oder iterativ.
Erstellen Sie eine Klasse Brackets und implementieren Sie darin die öffentliche statische Methode bracket(BrExIt b, String s) die eine Zeichenkette s erhält und ein String-Array aller möglichen sinnvollen Klammerungen der Zeichen von s zurück gibt Bsp: ”ab” [ab, (a)b, ((a)(b)), a(b), (ab), (a)(b), ((a)b), (a(b))]
Ist s leer oder null, so muss auch das Ergebnis ein leeres Array sein. Die Reihenfolge der Elementein der Rückgabe ist irrelevant. Wichtig aber ist, dass kein Element in der Ergebnisliste mehrmals vorkommt und dass kein Klammerpaar leer bleibt oder ein anderes Klammerpaar direkt umschließt, also z.B. nicht„()“,nicht„((a))b“ und auch nicht „(((a)(b)))“. WICHTIG: Außer der Klasse String, dürfen Sie KEINE anderen Klassen oder Methoden aus der Java-API verwenden (auch NICHT System.out, HashSet oder Arrays.copyOf)! Verwenden Sie stattdessen unbedingt die über BrExIt bereitgestellte Methode.
Das ist die Methode:
Java:
public interface BrExIt {
/**
* Appends {@code result} to the end of {@code results}.
*
* @param results - array to which {@code result} should be appended to
* @param result - element to be appended to {@code results}
* @return a new array containing all values from {@code results} (in original order) followed by {@code result} as last entry
* @throws NullPointerException - if one or both arguments are {@code null}
*/
String[] append(String[] results, String result);
}
Ich weiß überhaupt nicht wo ich hier anfangen soll. Kann mir vllt jmd helfen?
Danke!