Програма Котліна для відміни речення за допомогою рекурсії

У цій програмі ви навчитесь робити зворотне дане речення за допомогою рекурсивного циклу в 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 реверс ("орк") "rk" результат + "o" + "W" + "" + "o" + "G"
6 реверс ("rk") "k" результат + "r" + "o" + "W" + "" + "o" + "G"
7 реверс ("k") "" результат + "k" + "r" + "o" + "W" + "" + "o" + "G"
Остаточний зворотний("") - "" + "k" + "r" + "o" + "W" + "" + "o" + "G" = "kroW oG"

Ось еквівалентний код Java: програма Java для зворотного речення

Цікаві статті...