Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Pre-order: Root, trái, phải
- In-order: Trái, root, phải
- Post-order: Trái, phải, root
- Ý tưởng:
- - Dựa trên output của pre-order biết được root.
- - Dựa trên output của in-order biết được nhánh con trái.
- - Đệ quy xuống đối với từng nhánh con.
- Ví dụ với cây như sau:
- a
- / \
- b e
- / \ \
- c d f
- Pre-order: a b c d e f
- In-order: c b d a e f
- Post-order (để đối chiếu kết quả sau khi làm): c d b f e a
- a là root, nhánh trái là c b d (phần đứng trước root), nhánh phải là e f
- Post-order nên nhánh trái đứng trước nhánh phải, root đứng sau cùng.
- Kết quả hiện tại là - - - + + a (- là node của nhánh trái, + của nhánh phải)
- ĐỆ QUY:
- # Nhánh trái:
- b
- / \
- c d
- Pre-order: b c d
- In-order: c b d
- b là root, nhánh trái là c, nhánh phải là d. Tới đây không đi xuống được nữa nên dừng lại, kết quả của nhánh con: c d b.
- Kết quả lúc này là:
- c d b + + a
- # Nhánh phải:
- e
- \
- f
- Pre-order: e f
- In-order: e f
- e là root, nhánh trái rỗng, nhánh phải là f. Tới đây không đi xuống được nữa nên dừng lại, kết quả của nhánh con: f e.
- Kết quả lúc này là:
- c d b f e a
- So sánh với kết quả tính tay ở trên sẽ thấy kết quả này chính xác.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement