Gegeben sind zwei Strings str_1 und str_2. Das Ziel besteht darin, mithilfe eines rekursiven Verfahrens die Anzahl der Vorkommen der Teilzeichenfolge str2 in der Zeichenfolge str1 zu zählen.
Eine rekursive Funktion ist eine Funktion, die sich innerhalb ihrer Definition selbst aufruft.
Wenn str1 „Ich weiß, dass du weißt, dass ich weiß“ ist und str2 „wissen“ ist
Die Anzahl der Vorkommen beträgt - 3
Lassen Sie es uns anhand von Beispielen verstehen.
Zum Beispiel lautet die chinesische Übersetzung von
Eingabe
str1 = "TPisTPareTPamTP", str2 = "TP";
Nach dem Login kopieren
Ausgabe
Count of occurrences of a substring recursively are: 4
Nach dem Login kopieren
Erläuterung
rreee
Explanation
ist:
Explanation
The substring TP occurs 4 times in str1.
Nach dem Login kopieren
unten Die im Programm verwendete Methode ist wie folgt
-
In dieser Methode suchen wir mithilfe der Methode contains() in Java nach dem Vorkommen von str2 in str1. Gibt true zurück, wenn str2 in str1 vorhanden ist. Wenn „true“, entfernen Sie die erste Übereinstimmung aus str1, indem Sie sie mithilfe der Methode „ReplaceFirst()“ in Java durch „“ ersetzen und 1 zum Rückgabewert hinzufügen, um die Anzahl zu erhöhen.
Nehmen Sie zwei Saiten als str1 und str2.
Die rekursive Methode subsrting_rec(String str, String sub) akzeptiert den String str und seinen Teilstring sub und gibt die Häufigkeit zurück, mit der sub in str vorkommt. Überprüfen Sie, ob str.contains(sub) wahr ist. ( str hat sub ) Wenn wahr, verwenden Sie str.replaceFirst(sub,""), um das erste Vorkommen von sub durch "" zu ersetzen.
Tun Sie dies in einem rekursiven Aufruf von subsrting_rec(String str, String sub). Am Ende aller Rekursionen wird die Summe aller zurückgegebenen Werte gezählt. Drucken Sie das Ergebnis aus. Beispiel Live-Demo
str1 = "HiHOwAReyouHiHi" str2 = "Hi"
Nach dem Login kopieren
Ausgabe
Wenn wir den obigen Code ausführen, wird die folgende Ausgabe generiert:
Count of occurrences of a substring recursively are: 3
Nach dem Login kopieren
Das obige ist der detaillierte Inhalt vonZählen Sie rekursiv die Anzahl der Vorkommen eines Teilstrings in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!