Advertisement
Guest User

Untitled

a guest
Jan 18th, 2017
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.48 KB | None | 0 0
  1. Pre-order: Root, trái, phải
  2. In-order: Trái, root, phải
  3. Post-order: Trái, phải, root
  4.  
  5. Ý tưởng:
  6. - Dựa trên output của pre-order biết được root.
  7. - Dựa trên output của in-order biết được nhánh con trái.
  8. - Đệ quy xuống đối với từng nhánh con.
  9.  
  10. Ví dụ với cây như sau:
  11.  
  12. a
  13. / \
  14. b e
  15. / \ \
  16. c d f
  17.  
  18. Pre-order: a b c d e f
  19. In-order: c b d a e f
  20. Post-order (để đối chiếu kết quả sau khi làm): c d b f e a
  21.  
  22. a là root, nhánh trái là c b d (phần đứng trước root), nhánh phải là e f
  23. Post-order nên nhánh trái đứng trước nhánh phải, root đứng sau cùng.
  24. Kết quả hiện tại là - - - + + a (- là node của nhánh trái, + của nhánh phải)
  25.  
  26. ĐỆ QUY:
  27. # Nhánh trái:
  28.  
  29. b
  30. / \
  31. c d
  32.  
  33. Pre-order: b c d
  34. In-order: c b d
  35.  
  36. 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.
  37.  
  38. Kết quả lúc này là:
  39. c d b + + a
  40.  
  41. # Nhánh phải:
  42.  
  43. e
  44. \
  45. f
  46.  
  47. Pre-order: e f
  48. In-order: e f
  49.  
  50. 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.
  51. Kết quả lúc này là:
  52. c d b f e a
  53.  
  54. 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