Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> Java

String in Java mit Rekursion umkehren – Schritt-für-Schritt-Anleitung

String in Java mit Rekursion umkehren

Rekursion ist eine leistungsstarke Technik, um Probleme zu lösen, die sich in kleinere, ähnliche Teilprobleme zerlegen lassen. Das Umkehren eines Strings ist ein klassisches Beispiel, das zeigt, wie eine einfache rekursive Funktion elegante String-Manipation bewältigen kann.

Warum Rekursion verwenden?

Java-Implementierung

package com.guru99;
public class StringUmkehren {
    public static void main(String[] args) {
        String meinString = "Guru99";
        String umgekehrt = stringUmkehren(meinString);
        System.out.println("Der umgekehrte String ist: " + umgekehrt);
    }
    /**
     * Kehrt den gegebenen String rekursiv um.
     * @param str der umzukehrende String
     * @return der umgekehrte String
     */
    public static String stringUmkehren(String str) {
        if (str.isEmpty()) {
            return ""; // Basisfall: ein leerer String ist seine eigene Umkehrung
        }
        // Rekursiere über den Teilstring ohne das erste Zeichen
        return stringUmkehren(str.substring(1)) + str.charAt(0);
    }
}

Typische Ausgabe

Der umgekehrte String ist: 99uruG

Den Ablauf verstehen

Die Rekursion funktioniert, indem sie wiederholt das erste Zeichen abtrennt und es an das Ergebnis der Umkehrung des verbleibenden Teilstrings anhängt. Wenn der Teilstring leer wird, rollt die Rekursion ab und verknüpft die Zeichen in umgekehrter Reihenfolge.

Randfälle & Performance

  • Leerer String – wird durch den Basisfall behandelt, gibt sofort einen leeren String zurück.
  • Null-Eingabe – Sie können eine Null-Prüfung hinzufügen, um eine NullPointerException zu vermeiden.
  • Zeitkomplexität – O(n) für Zeit und Speicher aufgrund des Rekursionsstacks.

Fazit

Rekursive String-Umkehr ist prägnant und demonstriert algorithmisches Kernwissen. Für Produktionscode, wo Performance kritisch ist, ist ein iterativer Ansatz oder die Verwendung von StringBuilder aufgrund geringerer Stack-Nutzung vorzuziehen.

Java

  1. Java Strings meistern: Erstellung, Methoden und Best Practices
  2. String-Repräsentationen in Java Enums meistern
  3. Array von Objekten in Java erstellen: Schritt-für-Schritt-Anleitung
  4. Java String length() Methode: String-Länge ermitteln (Beispiel)
  5. Java String.charAt(): Syntax, Rückgabetyp, Exceptions und praktisches Beispiel
  6. Java String compareTo() meistern: Syntax, Anwendungsfälle und praktische Beispiele
  7. Java String.endsWith(): String-Suffixe prüfen mit Beispielen
  8. Java String-Ersetzung meistern: replace(), replaceAll() und replaceFirst() erklärt
  9. Char in String in Java konvertieren – Praxisbeispiele und Best Practices
  10. Fibonacci-Folge in Java generieren: For-, While- und Rekursions-Beispiele