Recursão - Duplique cada caractere de uma entrada de string e corte o último caractere posteriormente com um método
Eu tenho o seguinte problema.
O método recursivo estático público String doSomeMagic ("Test") deve retornar:
TTeesstt
TTeess
TTee
TT
Eu já implementei esse comportamento assim:
public static String rowFunction(String s) {
String toReturn = new String();
if (!s.isEmpty()) {
toReturn = String.valueOf(s.charAt(0));
toReturn += toReturn + rowFunction(s.substring(1));
}
return toReturn;
}
public static String doSomeMagic(String s) {
String toReturn = new String();
if (!s.isEmpty()) {
toReturn = rowFunction(s) + "\n" + doSomeMagic(s.substring(0, s.length() - 1));
}
return toReturn;
}
Como alguém pode conseguir isso com apenas uma função? Alguma ideia?