Sobes.tech
Intern

Jak rozwinąć łańcuch?

sobes.tech AI

Odpowiedź od AI

  1. Iteracja z tworzeniem nowej linii:
// Przykład odwracania łańcucha
fun reverseString(str: String): String {
    var reversed = ""
    for (i in str.length - 1 downTo 0) {
        reversed += str[i]
    }
    return reversed
}
  1. Użycie StringBuilder/StringBuffer:
// Przykład odwracania łańcucha z użyciem StringBuilder
fun reverseString(str: String): String {
    return StringBuilder(str).reverse().toString()
}
  1. Użycie metod łańcuchów (Kotlin):
// Przykład odwracania łańcucha z użyciem reversed()
fun reverseString(str: String): String {
    return str.reversed()
}
  1. Rekurencja:
// Przykład rekurencyjnego odwracania łańcucha
fun reverseString(str: String): String {
    return if (str.isEmpty()) {
        str
    } else {
        reverseString(str.substring(1)) + str[0]
    }
}

Wybór metody zależy od wymagań dotyczących wydajności, czytelności kodu i konieczności obsługi starszych wersji Java (w przypadku użycia StringBuilder/StringBuffer). Metoda reversed() w Kotlin jest najbardziej zwięzła i preferowana.