Programme Java pour inverser une phrase à l'aide de la récursivité

Dans ce programme, vous apprendrez à inverser une phrase donnée en utilisant une boucle récursive en Java.

Pour comprendre cet exemple, vous devez avoir la connaissance des rubriques de programmation Java suivantes:

  • Méthodes Java
  • Récursivité Java
  • Chaîne Java

Exemple: inverser une phrase à l'aide de la récursivité

 public class Reverse ( public static void main(String() args) ( String sentence = "Go work"; String reversed = reverse(sentence); System.out.println("The reversed sentence is: " + reversed); ) public static String reverse(String sentence) ( if (sentence.isEmpty()) return sentence; return reverse(sentence.substring(1)) + sentence.charAt(0); ) )

Sortie :

 La phrase inversée est: krow oG

Dans le programme ci-dessus, nous avons une fonction récursive reverse().

À chaque itération, nous ajoutons (concaténons) le résultat de la reverse()fonction suivante au premier caractère de la phrase en utilisant charAt(0).

L'appel récursif doit être avant le charAt(), car de cette façon, les derniers caractères commenceront à s'ajouter sur le côté gauche. Si vous inversez l'ordre, vous vous retrouverez avec la phrase originale.

À la fin, nous nous retrouvons avec une phrase vide et reverse()retourne la phrase inversée.

Remarque : La sentence.substring(1)méthode renvoie la partie de la phrase de chaîne commençant de l'index 1 à la fin de la chaîne. Pour en savoir plus, visitez Java String substring ().

Étapes d'exécution
Itération sens inverse() sous-chaîne () reverseString
1 inverser ("Allez travailler") "o Travail" résultat + "G"
2 inverser ("o Travail") " Travail" résultat + "o" + "G"
3 inverser ("Travail") "Travail" résultat + "" + "o" + "G"
4 inverser ("Travail") "ork" résultat + "W" + "" + "o" + "G"
5 inverse ("ork") "rk" résultat + "o" + "W" + "" + "o" + "G"
6 inverse ("rk") "k" résultat + "r" + "o" + "W" + "" + "o" + "G"
sept inverse ("k") "" résultat + "k" + "r" + "o" + "W" + "" + "o" + "G"
Final sens inverse("") - "" + "k" + "r" + "o" + "W" + "" + "o" + "G" = "kroW oG"

Articles intéressants...