Kotlinov program za poništavanje rečenice pomoću rekurzije

U ovom programu naučit ćete obrnuti zadanu rečenicu pomoću rekurzivne petlje u Kotlinu.

Primjer: Obrni rečenicu pomoću rekurzije

 fun main(args: Array) ( val sentence = "Go work" val reversed = reverse(sentence) println("The reversed sentence is: $reversed") ) fun reverse(sentence: String): String ( if (sentence.isEmpty()) return sentence return reverse(sentence.substring(1)) + sentence(0) )

Kada pokrenete program, izlaz će biti:

 Obrnuta rečenica je: krow oG

U gore navedenom programu imamo rekurzivnu funkciju reverse().

Na svakoj iteraciji dodajemo (spajamo) rezultat sljedeće reverse()funkcije prvom znaku rečenice pomoću charAt(0).

Rekurzivni poziv mora biti ispred charAt(), jer će se tako zadnji znakovi početi dodavati s lijeve strane. Ako preokrenete redoslijed, završit ćete s izvornom rečenicom.

Na kraju završimo s praznom rečenicom i reverse()vratimo obrnutu rečenicu.

Koraci izvršenja
Iteracija obrnuti () podniz () reversedString
1 obrnuto ("Idi na posao") "o Posao" rezultat + "G"
2 obrnuto ("o Posao" "Posao" rezultat + "o" + "G"
3 obrnuto ("Posao") "Raditi" rezultat + "" + "o" + "G"
4 obrnuto ("Posao") "ork" rezultat + "W" + "" + "o" + "G"
5 obrnuto ("ork") "rk" rezultat + "o" + "W" + "" + "o" + "G"
6 obrnuto ("rk") "k" rezultat + "r" + "o" + "W" + "" + "o" + "G"
7 obrnuto ("k") "" rezultat + "k" + "r" + "o" + "W" + "" + "o" + "G"
Konačno obrnuto ("") - "" + "k" + "r" + "o" + "W" + "" + "o" + "G" = "kroW oG"

Evo ekvivalentnog Java koda: Java program za preokretanje rečenice

Zanimljivi članci...