Python Dasar-dasarMudah

Hapus duplikat yang berdekatan secara rekursif

Panduan terperinci dan implementasi Python untuk masalah 'Hapus duplikat yang berdekatan secara rekursif'.

Pernyataan Masalah

Mudah

Tulis fungsi remove_adjacent_duplicates(s) yang secara rekursif menghapus semua karakter duplikat yang berdekatan dari string s hingga tidak ada duplikat yang berdekatan yang tersisa. Di setiap lintasan, hapus semua pasangan karakter identik yang berurutan, lalu ulangi proses pada string yang dihasilkan hingga stabil. Kembalikan string terakhir.

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

Contoh

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?
Pertimbangkan untuk menggunakan struktur data khusus Rekursi seperti set atau heap.
Edge Cases to Watch
  • Struktur masukan kosong
  • Masukan elemen tunggal
  • Batasan angka yang besar

Siap Memecahkannya?

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

Buka di 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

Sumber Daya Python yang Direkomendasikan

Perluas pengetahuan Anda dengan tutorial interaktif terkait, lembar contekan, dan perbandingan kode.