Python Thông tin cơ bảnDễ dàng

Loại bỏ các bản sao liền kề theo cách đệ quy

Hướng dẫn chi tiết và cách triển khai Python cho vấn đề 'Xóa các bản sao liền kề theo cách đệ quy'.

Tuyên bố vấn đề

Dễ dàng

Viết hàm remove_adjacent_duplicates(s) loại bỏ đệ quy tất cả các ký tự trùng lặp liền kề khỏi chuỗi s cho đến khi không còn ký tự trùng lặp liền kề nào. Trong mỗi lần chuyển, hãy xóa tất cả các cặp ký tự giống nhau liên tiếp, sau đó lặp lại quy trình trên chuỗi kết quả cho đến khi ổn định. Trả về chuỗi cuối cùng.

Ràng buộc
  • 0 <= len(s) <= 1000
  • s contains only lowercase English letters

Ví dụ

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?
Hãy cân nhắc sử dụng các cấu trúc dữ liệu dành riêng cho đệ quy như tập hợp hoặc vùng heap.
Edge Cases to Watch
  • Cấu trúc đầu vào trống
  • Đầu vào phần tử đơn
  • Giới hạn số lớn

Sẵn sàng để giải quyết?

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

Mở trong Trình chỉnh sửa
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

Tài nguyên Python được đề xuất

Mở rộng kiến thức của bạn với các hướng dẫn tương tác, bảng ghi chú và so sánh mã có liên quan.