Java-programma om een ​​zin om te keren met behulp van recursie

In dit programma leer je een bepaalde zin om te keren met behulp van een recursieve lus in Java.

Om dit voorbeeld te begrijpen, moet u kennis hebben van de volgende Java-programmeeronderwerpen:

  • Java-methoden
  • Java-recursie
  • Java-tekenreeks

Voorbeeld: een zin omkeren door middel van recursie

 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); ) )

Uitgang :

 De omgekeerde zin is: krow oG

In het bovenstaande programma hebben we een recursieve functie reverse().

Bij elke iteratie voegen we het resultaat van de volgende reverse()functie toe aan het eerste teken van de zin met (aaneenschakelen) charAt(0).

De recursieve aanroep moet vóór de staan charAt(), omdat op die manier de laatste tekens aan de linkerkant worden toegevoegd. Als je de volgorde omdraait, krijg je de oorspronkelijke zin.

Uiteindelijk eindigen we met een lege zin en geven we reverse()de omgekeerde zin terug.

Opmerking : de sentence.substring(1)methode retourneert het gedeelte van de stringzin, beginnend bij index 1 tot het einde van de string. Ga voor meer informatie naar Java String substring ().

Uitvoeringsstappen
Iteratie omgekeerde() deelstring () reversedString
1 reverse ("Ga aan het werk") "o werk" resultaat + "G"
2 reverse ("o Work") " Werk" resultaat + "o" + "G"
3 reverse ("Werk") "Werk" resultaat + "" + "o" + "G"
4 reverse ("Werk") "ork" resultaat + "W" + "" + "o" + "G"
5 reverse ("ork") "rk" resultaat + "o" + "W" + "" + "o" + "G"
6 reverse ("rk") "k" resultaat + "r" + "o" + "W" + "" + "o" + "G"
7 reverse ("k") "" resultaat + "k" + "r" + "o" + "W" + "" + "o" + "G"
Laatste omgekeerde("") - "" + "k" + "r" + "o" + "W" + "" + "o" + "G" = "kroW oG"

Interessante artikelen...