Phỏng vấn top 150Trung bình

Tuần tự hóa và giải tuần tự hóa cây nhị phân

Hướng dẫn chi tiết và cách triển khai Python cho bài toán 'Nối tiếp và giải tuần tự hóa cây nhị phân'.

Tuyên bố vấn đề

Trung bình

Tuần tự hóa là quá trình chuyển đổi cấu trúc dữ liệu hoặc đối tượng thành một chuỗi bit để có thể lưu trữ trong tệp hoặc bộ nhớ đệm hoặc truyền qua liên kết kết nối mạng để được xây dựng lại sau này trong cùng môi trường máy tính hoặc môi trường máy tính khác.

Thiết kế thuật toán tuần tự hóa và giải tuần tự hóa cây nhị phân. Không có hạn chế nào về cách hoạt động của thuật toán tuần tự hóa/giải tuần tự hóa của bạn. Bạn chỉ cần đảm bảo rằng cây nhị phân có thể được tuần tự hóa thành một chuỗi và chuỗi này có thể được giải tuần tự hóa thành cấu trúc cây ban đầu.

Cây được biểu diễn dưới dạng danh sách thứ tự cấp độ. Thực hiện hai chức năng:

- serialize(root: list) -> str chuyển đổi cây thành chuỗi.

- deserialize(data: str) -> list chuyển đổi chuỗi trở lại cây.

Để thử nghiệm, hãy triển khai serializeDeserialize(root: list) -> list tuần tự hóa rồi giải tuần tự hóa, trả về kết quả.

Ràng buộc
  • The number of nodes in the tree is in the range [0, 10000]
  • -1000 <= Node.val <= 1000

Ví dụ

Example 1
Input
[1,2,3,None,None,4,5]
Output
[1,2,3,None,None,4,5]
Explanation

The tree is serialized to a string and deserialized back to the same tree structure.

Example 2
Input
[]
Output
[]
Explanation

An empty tree serialized and deserialized remains empty.

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 Cây như tập hợp hoặc đống.
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.