Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม

Binary Tree Traversals: Inorder, Preorder, Postorder, Level Order


สรุป 4 แบบ Traversal

ใช้ BST ตัวอย่างเดียวกัน:

Binary Tree Traversals: Inorder, Preorder, Postorder, Level Order

  • Inorder (Left, Root, Right): 5 8 10 15 16 20 23
  • Preorder (Root, Left, Right): 10 5 8 16 15 20 23
  • Postorder (Left, Right, Root): 8 5 15 23 20 16 10
  • Level Order (BFS): 10 5 16 8 15 20 23

อัลกอริทึมทั้ง 4 แบบ

inorderTraverse:   left → root → right
preorderTraverse:  root → left → right
postorderTraverse: left → right → root
levelOrderTraverse: queue-based BFS

โค้ด C++ รวม (Inorder, Preorder, Postorder, Level Order)

// class node, tree พร้อม 4 traversal methods
// main: insert 10,5,16,20,15,8,23 แล้วเรียกทั้ง 4 แบบ

Output

In-Order Traversal: 5 8 10 15 16 20 23
Pre-Order Traversal: 10 5 8 16 15 20 23
Post-Order Traversal: 8 5 15 23 20 16 10
Level-Order Traversal: 10 5 16 8 15 20 23