Programme Java pour inverser une chaîne à l'aide de la récursivité
Dans ce tutoriel, nous allons apprendre à inverser une chaîne à l'aide d'une fonction récursive. Une fonction récursive est une fonction qui s'appelle elle-même. Mais avant d'aller plus loin, si vous n'êtes pas familier avec le concept de chaîne, consultez l'article sur les chaînes en Java.
Entrée : Saisissez la chaîne :chaîne
Sortie : L'inverse de la chaîne est :gnirtS
Programme 1 :inverser une chaîne à l'aide de la récursivité
Dans ce programme, nous verrons comment inverser une chaîne en utilisant la récursivité avec une chaîne définie par l'utilisateur. Ici, nous demanderons à l'utilisateur d'entrer la chaîne, puis nous inverserons cette chaîne en appelant une fonction de manière récursive et enfin nous imprimerons la chaîne inversée.
Algorithme
- Commencer
- Déclarez une chaîne.
- Demandez à l'utilisateur d'initialiser la chaîne.
- Appelez une fonction récursive pour inverser la chaîne.
- Si la chaîne est nulle ou se compose d'un seul caractère, imprimez la chaîne saisie.
- Si la chaîne se compose de plusieurs caractères, appelez la fonction de manière récursive pour inverser la chaîne.
- Imprimez la chaîne inversée.
- Arrêtez.
Vous trouverez ci-dessous le code correspondant en langage Java.
/*Java Program to reverse a string using Recursive Function*/
import java.util.Scanner;
public class Main
{
//Recursive function that reverses a string
static void reverse(String str)
{
//If the string is null or consists of single character
//then print the entered string
if ((str==null)||(str.length() <= 1))
System.out.println(str);
else
{
//If string consists of multiple strings
System.out.print(str.charAt(str.length()-1));
//Call the function recursively to reverse the string
reverse(str.substring(0,str.length()-1));
}
}
// Driver Code
public static void main(String args[])
{
//Take input from the user
Scanner sc = new Scanner(System.in);
System.out.println("Enter the String :");
String str = sc.nextLine(); //Input the string
//Call a recursive function to reverse the string
System.out.println("The reverse of the entered the String :");
reverse(str);
}
}
Saisissez la chaîne :
hello world
L'inverse de la chaîne saisie :
dlrow olleh
Programme 2 :inverser une chaîne à l'aide de la récursivité
Dans ce programme, nous verrons comment inverser une chaîne en utilisant la récursivité avec une chaîne définie par l'utilisateur. Ici, nous demanderons à l'utilisateur d'entrer la chaîne, puis nous inverserons cette chaîne en appelant une fonction de manière récursive et renverrons la chaîne inversée. Enfin, la chaîne inversée s'affiche.
Algorithme
- Commencer
- Déclarez une chaîne.
- Initialisez-le.
- Appelez une fonction récursive pour inverser la chaîne.
- Si la chaîne est vide, c'est-à-dire si la chaîne est vide, renvoie la même chaîne.
- Si la chaîne comporte plusieurs caractères, appelez la fonction de manière récursive pour inverser la chaîne.
- Renvoyer la chaîne inversée.
- Imprimez la chaîne inversée.
- Arrêtez.
Vous trouverez ci-dessous le code correspondant en langage Java.
/*Java Program to reverse a string using Recursive Function*/
import java.util.Scanner;
public class Main
{
//Driver Code
public static void main(String[] args)
{
//Take input from the user
Scanner sc = new Scanner(System.in);
System.out.println("Enter the String :");
String str = sc.nextLine(); //Input the string
//Call a recursive function to reverse the string
String rev=reverseString(str);
System.out.println("The reverse of the entered the String :"+rev);
}
//Recursive Function to Reverse the String
public static String reverseString(String str)
{
//If entered string is empty
//Return the empty string
if (str.isEmpty())
return str;
//If string consists of multiple character
//Call the Function Recursively
return reverseString(str.substring(1)) + str.charAt(0);
}
}
Entrez la chaîne :World
L'inverse de la chaîne saisie :dlroW
Programme 3 :inverser une chaîne à l'aide de la récursivité
Dans ce programme, nous verrons comment inverser une chaîne en utilisant la récursivité avec une chaîne prédéfinie.
Algorithme
- Commencer
- Déclarez une chaîne.
- Initialisez-le.
- Appelez une fonction récursive pour inverser la chaîne.
- Si la chaîne est vide, c'est-à-dire si la chaîne est vide, renvoie la même chaîne.
- Si la chaîne comporte plusieurs caractères, appelez la fonction de manière récursive pour inverser la chaîne.
- Imprimez la chaîne inversée.
- Arrêtez.
Vous trouverez ci-dessous le code correspondant en langage Java.
/*Java Program to reverse a string using Recursive Function*/
public class Main
{
//Driver Code
public static void main(String[] args)
{
//Initialize the String
String str = "Reverse String";
System.out.println("The entered string is: " + str);
String rev = reverseString(str);
System.out.println("The reversed string is: " + rev);
}
//Recursive Function to Reverse the String
public static String reverseString(String str)
{
//If entered string is empty
//Return the empty string
if (str.isEmpty())
return str;
//If string consists of multiple character
//Call the Function Recursively
return reverseString(str.substring(1)) + str.charAt(0);
}
}
La chaîne saisie est :Reverse String
La chaîne inversée est :gnirtS esreveR