Програма Kotlin за обръщане на изречение с помощта на рекурсия

В тази програма ще се научите да обръщате дадено изречение с помощта на рекурсивен цикъл в Kotlin.

Пример: Обърнете изречението с помощта на рекурсия

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

Когато стартирате програмата, изходът ще бъде:

 Обратното изречение е: krow oG

В горната програма имаме рекурсивна функция reverse().

При всяка итерация добавяме (обединяваме) резултата от следващата reverse()функция към първия символ на изречението, използвайки charAt(0).

Рекурсивното повикване трябва да е преди charAt(), тъй като по този начин последните знаци ще започнат да се добавят отляво. Ако обърнете реда, ще получите първоначалното изречение.

В крайна сметка завършваме с празно изречение и reverse()връщаме обърнатото изречение.

Стъпки за изпълнение
Повторение обратен() подниз () reversedString
1 обратен ("Отидете на работа") "o работа" резултат + "G"
2 обратна ("o Работа" "Работа" резултат + "o" + "G"
3 обратно ("Работа") "Работа" резултат + "" + "o" + "G"
4 обратно ("Работа") "орк" резултат + "W" + "" + "o" + "G"
5 обратно ("ork") "rk" резултат + "o" + "W" + "" + "o" + "G"
6 обратно ("rk") "к" резултат + "r" + "o" + "W" + "" + "o" + "G"
7 обратно ("k") "" резултат + "k" + "r" + "o" + "W" + "" + "o" + "G"
Финал обратен("") - "" + "k" + "r" + "o" + "W" + "" + "o" + "G" = "kroW oG"

Ето еквивалентния Java код: Java програма за обръщане на изречение

Интересни статии...