এই ট্রাভারসাল মেথডে, রুট নোডটি সবশেষে ভিজিট করা হয়, তাই এই নাম। প্রথমে আমরা বাম সাবট্রি ট্রাভার্স করি, তারপর ডান সাবট্রি এবং অবশেষে রুট নোড।

আমরা A-থেকে শুরু করি, এবং পোস্ট-অর্ডার ট্রাভারসাল অনুসরণ করে, আমরা প্রথমে বাম সাবট্রি B-কে ভিজিট করি। B-টিও পোস্ট-অর্ডার ট্রাভার্স হয়। প্রক্রিয়াটি চলতে থাকে যতক্ষণ না সব নোড ভিজিট হয়। এই ট্রির পোস্ট-অর্ডার ট্রাভারসালের আউটপুট হবে:
D → E → B → F → G → C → A
এটি वो অ্যালগরিদম যা আমরা বাস্তবায়ন করব:
- রিকারসিভলি বাম সাবট্রি ট্রাভার্স করুন
- রিকারসিভলি ডান সাবট্রি ট্রাভার্স করুন
- নোডের ডেটা প্রিন্ট করুন
আসুন দেখি আমরা আমাদের ক্লাসে কীভাবে এটি বাস্তবায়ন করব।
postOrder() {
postOrderHelper(this.root);
}
হেল্পার ফাংশন:
উদাহরণ
function postOrderHelper(root) {
if (root !== null) {
postOrderHelper(root.left);
postOrderHelper(root.right);
console.log(root.data);
}
}
আপনি নিচের কোড দিয়ে এটি পরীক্ষা করতে পারেন:
উদাহরণ
let BST = new BinarySearchTree(); BST.insertRec(10); BST.insertRec(15); BST.insertRec(5); BST.insertRec(50); BST.insertRec(3); BST.insertRec(7); BST.insertRec(12); BST.postOrder();
আউটপুট
এটি নিচের আউটপুট দেবে:
3 7 5 12 50 15 10