अभिव्यक्ति वृक्ष
एक्सप्रेशन ट्री वे होते हैं जिनमें लीफ नोड्स के संचालन के लिए मान होते हैं, और आंतरिक नोड्स में वह ऑपरेटर होता है जिस पर लीफ नोड का प्रदर्शन किया जाएगा।
उदाहरण
4 + ((7 + 9) * 2) इस प्रकार एक व्यंजक वृक्ष होगा
अभिव्यक्ति ट्री बनाने के लिए एल्गोरिदम
T को व्यंजक वृक्ष होने दें।
<पूर्व>अगर T NULL नहीं है:
यदि T->data एक संकार्य है:
टी.डेटा लौटाएं
ए =हल करें (टी.बाएं)
बी =हल करें(टी.दाएं)
--> ए और बी पर 'टी.डेटा' के लिए ऑपरेटर की गणना करें, और रिकर्सिवली कॉल करें,
वापसी की गणना (ए, बी, टी.डेटा)
एक्सप्रेशन ट्री कैसे बनाएं?
दिए गए एक्सप्रेशन के लिए एक एक्सप्रेशन ट्री बनाने के लिए, हम आम तौर पर स्टैक डेटा स्ट्रक्चर का उपयोग करते हैं।
प्रारंभ में हम दिए गए पोस्टफिक्स एक्सप्रेशन पर पुनरावृति करते हैं और नीचे दिए गए चरणों का पालन करते हैं -
- अगर हमें दिए गए एक्सप्रेशन में ऑपरेंड मिलता है, तो उसे स्टैक में पुश करें। यह अभिव्यक्ति वृक्ष का मूल बन जाएगा।
- यदि किसी ऑपरेटर को एक्सप्रेशन में दो मान मिलते हैं, तो एक्सप्रेशन ट्री को उसके बच्चे के रूप में जोड़ें, और उन्हें वर्तमान नोड में पुश करें।
- चरण-1 और चरण-2 को तब तक दोहराएं जब तक कि हम दिए गए व्यंजक को पूरा न कर लें।
- अब जांचें कि क्या प्रत्येक रूट नोड में ऑपरेंड के अलावा कुछ नहीं है और प्रत्येक चाइल्ड नोड में केवल मान हैं।