Phỏng vấn top 150Cứng

Tổng đường dẫn tối đa củ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 'Tổng đường dẫn tối đa của cây nhị phân'.

Tuyên bố vấn đề

Cứng

Đường dẫn trong cây nhị phân là một chuỗi các nút trong đó mỗi cặp nút liền kề trong chuỗi có một cạnh nối chúng. Một nút chỉ có thể xuất hiện trong chuỗi nhiều nhất một lần. Lưu ý rằng đường dẫn không cần phải đi qua thư mục gốc.

Tổng đường dẫn của một đường dẫn là tổng các giá trị của nút trong đường dẫn.

Cho gốc của cây nhị phân, trả về tổng đường dẫn tối đa của bất kỳ đường dẫn không trống nào.

Cây được biểu diễn dưới dạng danh sách thứ tự cấp độ. Triển khai hàm maxPathSum(root: list) -> int.

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

Ví dụ

Example 1
Input
[1,2,3]
Output
6
Explanation

The optimal path is 2 -> 1 -> 3 with a path sum of 2 + 1 + 3 = 6.

Example 2
Input
[-10,9,20,None,None,15,7]
Output
42
Explanation

The optimal path is 15 -> 20 -> 7 with a path sum of 15 + 20 + 7 = 42.

Example 3
Input
[-3]
Output
-3
Explanation

The only path is the single node -3.

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.