इस ट्रैवर्सल मेथड में, रूट नोड को पहले देखा जाता है, फिर लेफ्ट सबट्री और अंत में राइट सबट्री पर।
हम A, . से शुरू करते हैं और अग्रिम-आदेश ट्रैवर्सल के बाद, हम सबसे पहले A . पर जाते हैं स्वयं और फिर इसके बाएँ उपप्रकार B पर जाएँ। बी पूर्व-आदेश भी पार किया जाता है। प्रक्रिया तब तक चलती है जब तक सभी नोड्स का दौरा नहीं किया जाता है। इस ट्री के प्री-ऑर्डर ट्रैवर्सल का आउटपुट होगा -
ए → बी → डी → ई → सी → एफ → जी
यह वह एल्गोरिथम है जिसे हम लागू करेंगे:
- नोड का डेटा प्रिंट करें
- बाएं सबट्री को रिकर्सिवली ट्रैवर्स करें
- पुनरावर्ती रूप से दाएं उप-वृक्ष को पार करें
आइए देखें कि हम इसे अपनी कक्षा में कैसे लागू करेंगे।
preOrder() { preOrderHelper(this.root);}
हेल्पर फंक्शन:
उदाहरण
फ़ंक्शन प्रीऑर्डर हेल्पर (रूट) { अगर (रूट! ==नल) { कंसोल.लॉग (रूट। डेटा); प्रीऑर्डर हेल्पर (रूट। लेफ्ट); प्रीऑर्डर हेल्पर (रूट। राइट); }}पूर्व>आप इसका परीक्षण कर सकते हैं -
उदाहरण
बीएसटी =नया बाइनरीसर्च ट्री (); बीएसटी.insertRec (10); BST.insertRec (15); BST.insertRec (5); BST.insertRec (50); BST.insertRec (3); BST.insertRec ( 7);BST.insertRec(12);BST.preOrder();आउटपुट
यह आउटपुट देगा -
10537151250