Program Kotlin na zvrátenie vety pomocou rekurzie

V tomto programe sa naučíte obrátiť danú vetu pomocou rekurzívnej slučky v Kotline.

Príklad: Obrátenie vety pomocou rekurzie

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

Po spustení programu bude výstup:

 Obrátená veta je: krow oG

Vo vyššie uvedenom programe máme rekurzívnu funkciu reverse().

Pri každej iterácii pridáme (zreťazíme) výsledok nasledujúcej reverse()funkcie k prvému znaku vety pomocou charAt(0).

Rekurzívne volanie musí byť pred charAt()znakom, pretože tak sa začnú na ľavej strane pridávať posledné znaky. Ak poradie obrátite, skončí sa pôvodná veta.

Nakoniec skončíme s prázdnou vetou a reverse()vrátime obrátenú vetu.

Kroky vykonania
Iterácia reverz () podreťazec () reversedString
1 reverz („Choď do práce“) „o Práca“ výsledok + "G"
2 spätný chod („o práca“) " Práca" výsledok + „o“ + „G“
3 reverz („Práca“) "Práca" výsledok + "" + "o" + "G"
4 reverz („Práca“) „ork“ výsledok + "W" + "" + "o" + "G"
5 reverz („ork“) „rk“ výsledok + "o" + "W" + "" + "o" + "G"
6 spätný chod („rk“) „k“ výsledok + "r" + "o" + "W" + "" + "o" + "G"
7 reverz („k“) „“ výsledok + "k" + "r" + "o" + "W" + "" + "o" + "G"
Konečný reverz („“) - "" + "k" + "r" + "o" + "W" + "" + "o" + "G" = "kroW oG"

Tu je ekvivalentný kód Java: Program Java na obrátenie vety

Zaujímavé články...