इस ट्रैवर्सल मेथड में, रूट नोड को अंत में विजिट किया जाता है, इसलिए इसका नाम। पहले हम लेफ्ट सबट्री को ट्रैवर्स करते हैं, फिर राइट सबट्री को और अंत में रूट नोड को।

हम 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