Python Nozioni di baseFacile

Rimuovi i duplicati adiacenti in modo ricorsivo

Guida dettagliata e implementazione Python per il problema "Rimuovi duplicati adiacenti in modo ricorsivo".

Dichiarazione del problema

Facile

Scrivi una funzione remove_adjacent_duplicates(s) che rimuove ricorsivamente tutti i caratteri duplicati adiacenti dalla stringa s finché non rimangono più duplicati adiacenti. Ad ogni passaggio, rimuovi tutte le coppie di caratteri identici consecutivi, quindi ripeti il ​​processo sulla stringa risultante finché non si stabilizza. Restituisce la stringa finale.

Vincoli
  • 0 <= len(s) <= 1000
  • s contains only lowercase English letters

Esempi

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?
Prendi in considerazione l'utilizzo di strutture dati specifiche della ricorsione come set o heap.
Edge Cases to Watch
  • Strutture di input vuote
  • Ingressi a elemento singolo
  • Grandi limiti numerici

Pronto a risolvere?

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

Apri nell'editor
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

Risorse Python consigliate

Espandi le tue conoscenze con tutorial interattivi, foglietti illustrativi e confronti di codici correlati.