Program Java pro obrácení věty pomocí rekurze

V tomto programu se naučíte zvrátit danou větu pomocí rekurzivní smyčky v Javě.

Abychom porozuměli tomuto příkladu, měli byste znát následující programovací témata Java:

  • Metody Java
  • Java rekurze
  • Řetězec Java

Příklad: Obrátit větu pomocí rekurze

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

Výstup :

 Obrácená věta je: krow oG

Ve výše uvedeném programu máme rekurzivní funkci reverse().

Při každé iteraci přidáme (zřetězíme) výsledek další reverse()funkce k prvnímu znaku věty pomocí charAt(0).

Rekurzivní volání musí být před charAt(), protože tak se začnou poslední znaky přidávat na levou stranu. Pokud obrátíte pořadí, dostanete původní větu.

Nakonec skončíme s prázdnou větou a vrátíme reverse()obrácenou větu.

Poznámka : sentence.substring(1)Metoda vrací část věty řetězce začínající od indexu 1 po konec řetězce. Další informace najdete na podřetězci Java String ().

Prováděcí kroky
Opakování zvrátit() podřetězec () obrácený řetězec
1 reverzní („Jdi do práce“) „o práci“ výsledek + "G"
2 zpět („o Práce“) "Práce" výsledek + "o" + "G"
3 zpět („Práce“) "Práce" výsledek + "" + "o" + "G"
4 zpět („Práce“) „ork“ výsledek + "W" + "" + "o" + "G"
5 zpět („ork“) "rk" výsledek + "o" + "W" + "" + "o" + "G"
6 zpět ("rk") „k“ výsledek + "r" + "o" + "W" + "" + "o" + "G"
7 zpět („k“) „“ výsledek + "k" + "r" + "o" + "W" + "" + "o" + "G"
Finále zvrátit("") - "" + "k" + "r" + "o" + "W" + "" + "o" + "G" = "kroW oG"

Zajímavé články...