Desafío C++
❓ ¿Qué hace esta función recursiva?
▶️ Este video puede ayudarte a entender la recursividad
Click aquí para desplegar la solución. 👈
Respuesta: "!ovisrucer omtirogla nu se etsE"
✏️ Explicación: La función recibe un string y lo retorna invertido. Si es vacío o tiene 1 solo carácter, retorna el mismo string, sin modificaciones.
Desafío C++ 👇
Click aquí para una versión accesible de la infografía (apta para lectores electrónicos)
Código:
string rev(string cadena) {
int len=cadena.length();
if (len==0 or len==1)
return cadena;
else
if (len==2) {
string res = "";
return res+cadena[1]+cadena[0];
}
else {
char primero=cadena[0];
char ultimo=cadena[len-1];
string interior=cadena.substr(1, len-2);
return ultimo+rev(interior)+primero;
}
}
¿Qué retorna la función ante la siguiente invocación?
rev("Este es un algoritmo recursivo!")