„Java“ programa norint pakeisti sakinį naudojant rekursiją

Šioje programoje išmoksite pakeisti nurodytą sakinį naudodami „Java“ rekursinę kilpą.

Norėdami suprasti šį pavyzdį, turite žinoti šias Java programavimo temas:

  • „Java“ metodai
  • „Java Recursion“
  • „Java“ eilutė

Pavyzdys: pakeiskite sakinį naudodami rekursiją

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

Išvestis :

 Atvirkštinis sakinys yra: krow oG

Pirmiau pateiktoje programoje mes turime rekursinę funkciją reverse().

Kiekvienoje iteracijoje reverse()prie pirmojo sakinio simbolio pridedame (sujungiame) kitos funkcijos rezultatą charAt(0).

Rekursinis skambutis turi būti prieš charAt(), nes tokiu būdu paskutiniai simboliai bus pradėti pridėti kairėje pusėje. Jei pakeisite tvarką, gausite originalų sakinį.

Galų gale mes padarysime tuščią sakinį ir reverse()grąžinsime atvirkštinį sakinį.

Pastaba : sentence.substring(1)metodas grąžina eilutės sakinio dalį, prasidedančią nuo 1 indekso iki eilutės pabaigos. Norėdami sužinoti daugiau, apsilankykite „Java“ eilutės pakraščiuose ().

Vykdymo veiksmai
Kartojimas atvirkštinis () substring () reversedString
1 atvirkščiai („Eik dirbti“) „o darbas“ rezultatas + „G“
2 atvirkščiai („o darbas“) „Darbas“ rezultatas + "o" + "G"
3 atvirkščiai („darbas“) „Darbas“ rezultatas + "" + "o" + "G"
4 atvirkščiai („darbas“) „ork“ rezultatas + "W" + "" + "o" + "G"
5 atvirkštinis („ork“) „rk“ rezultatas + "o" + "W" + "" + "o" + "G"
6 atvirkštinė („rk“) „k“ rezultatas + "r" + "o" + "W" + "" + "o" + "G"
7 atvirkštinė („k“) "" rezultatas + "k" + "r" + "o" + "W" + "" + "o" + "G"
Galutinis atvirkštinis ("") - "" + "k" + "r" + "o" + "W" + "" + "o" + "G" = "kroW oG"

Įdomios straipsniai...