Header Ads Widget

Ticker

6/recent/ticker-posts

Programa Java para revertir una oración usando recursividad

En este programa, aprenderá a revertir una oración dada usando un bucle recursivo en Java.

Ejemplo: revertir una oración usando recursividad

  1. public class Reverse {
  2. public static void main(String[] args) {
  3. String sentence = "Go work";
  4. String reversed = reverse(sentence);
  5. System.out.println("The reversed sentence is: " + reversed);
  6. }
  7. public static String reverse(String sentence)
  8. {
  9. if (sentence.isEmpty())
  10. return sentence;
  11. return reverse(sentence.substring(1)) + sentence.charAt(0);
  12. }
  13. }
Cuando ejecutas el programa, la salida será:
La oración inversa es: krow oG
En el programa anterior, tenemos una función recursiva reverse().
En cada iteración, agregamos (concatenamos) el resultado de la siguiente reverse()función al primer carácter de la oración usando charAt(0).
La llamada recursiva debe ser anterior a la charAt(), porque de esa manera los últimos caracteres comenzarán a agregarse al lado izquierdo. Si invierte el orden, terminará con la oración original.
Al final, terminamos con una oración vacía reverse()devuelve la oración invertida.
Pasos de ejecución
Iteraciónmarcha atrás()subcadena ()cuerda invertida
1reversa ("Ir a trabajar")"o trabajo"resultado + "G"
2reversa ("o trabajo")" Trabajo"resultado + "o" + "G"
3reversa ("Trabajo")"Trabajo"resultado + "" + "o" + "G"
4 4reversa ("Trabajo")"ork"resultado + "W" + "" + "o" + "G"
5 5reverso ("ork")"rk"resultado + "o" + "W" + "" + "o" + "G"
6 6reverso ("rk")"k"resultado + "r" + "o" + "W" + "" + "o" + "G"
7 7reverso ("k")""resultado + "k" + "r" + "o" + "W" + "" + "o" + "G"
Finalmarcha atrás("")-"" + "k" + "r" + "o" + "W" + "" + "o" + "G" = "kroW oG"

Publicar un comentario

0 Comentarios