Java programm rekursiooni abil lause tühistamiseks

Lang L: none (table-of-contents)

Selles programmis õpite antud lause ümber pöörama, kasutades Java-s rekursiivset silmust.

Selle näite mõistmiseks peaksid teil olema teadmised järgmistest Java programmeerimise teemadest:

  • Java meetodid
  • Java rekursioon
  • Java string

Näide: Lause ümberpööramine rekursiooni abil

 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äljund :

 Pööratud lause on: krow oG

Ülaltoodud programmis on meil rekursiivne funktsioon reverse().

Igal iteratsioonil lisame järgmise reverse()lause funktsiooni (liitma) lause esimese märgi abil charAt(0).

Rekursiivne kõne peab olema enne charAt(), sest nii hakkavad viimased märgid vasakusse serva lisama. Kui muudate järjekorda, saate lõpuks originaalse lause.

Lõpuks jõuame tühja lauseni ja reverse()tagastame tagurdatud lause.

Märkus . sentence.substring(1)Meetod tagastab stringi lause osa, mis algab indeksist 1 kuni stringi lõpuni. Lisateabe saamiseks külastage Java Stringi alamstringi ().

Täitmise etapid
Kordus tagurpidi() alamstring () reversedString
1 tagurpidi ("mine tööle") "o töö" tulemus + "G"
2 tagurpidi ("o Work") "Töö" tulemus + "o" + "G"
3 tagurpidi ("töö") "Töö" tulemus + "" + "o" + "G"
4 tagurpidi ("töö") "ork" tulemus + "W" + "" + "o" + "G"
5 tagurpidi ("ork") "rk" tulemus + "o" + "W" + "" + "o" + "G"
6 tagurpidi ("rk") "k" tulemus + "r" + "o" + "W" + "" + "o" + "G"
7 tagurpidi ("k") "" tulemus + "k" + "r" + "o" + "W" + "" + "o" + "G"
Lõplik tagurpidi("") - "" + "k" + "r" + "o" + "W" + "" + "o" + "G" = "kroW oG"

Huvitavad Artiklid...