Python GrundlagenEinfach

Entfernen Sie benachbarte Duplikate rekursiv

Detaillierte Anleitung und Python-Implementierung für das Problem „Benachbarte Duplikate rekursiv entfernen“.

Problemstellung

Einfach

Schreiben Sie eine Funktion remove_adjacent_duplicates(s), die rekursiv alle angrenzenden doppelten Zeichen aus der Zeichenfolge s entfernt, bis keine angrenzenden Duplikate mehr vorhanden sind. Entfernen Sie in jedem Durchgang alle Paare aufeinanderfolgender identischer Zeichen und wiederholen Sie den Vorgang dann für die resultierende Zeichenfolge, bis sie sich stabilisiert. Gibt die letzte Zeichenfolge zurück.

Einschränkungen
  • 0 <= len(s) <= 1000
  • s contains only lowercase English letters

Beispiele

Example 1
Input
s = 'aabccba'
Output
'a'
Explanation

First pass: remove 'aa' and 'cc' -> 'bba'. Second pass: remove 'bb' -> 'a'. No more adjacent duplicates.

Example 2
Input
s = 'abcddcba'
Output
''
Explanation

Remove 'dd' -> 'abccba'. Remove 'cc' -> 'abba'. Remove 'bb' -> 'aa'. Remove 'aa' -> ''. Empty string.

Example 3
Input
s = 'abcd'
Output
'abcd'
Explanation

No adjacent duplicates exist, so the string remains unchanged.

Need a Hint?
Erwägen Sie die Verwendung rekursionsspezifischer Datenstrukturen wie Mengen oder Heaps.
Edge Cases to Watch
  • Leere Eingabestrukturen
  • Einzelelementeingaben
  • Große numerische Grenzen

Bereit zur Lösung?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Im Editor öffnen
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Empfohlene Python-Ressourcen

Erweitern Sie Ihr Wissen mit zugehörigen interaktiven Tutorials, Spickzetteln und Codevergleichen.