बाइनरी ट्री को देखते हुए, कार्य 1 से n तक के नोड में संग्रहीत प्रत्येक कुंजी से जुड़े स्तर को प्रिंट करना है
उपरोक्त पेड़ में, नोड्स हैं -
10 लेवल 13 पर और 211 लेवल 2140 पर, 162, 100 और 146 लेवल 3 पर
कुंजी को देखते हुए प्रोग्राम को उस विशेष कुंजी के स्तर को प्रिंट करना होगा।
उदाहरण
इनपुट:10 3 211 140 162 100 146 आउटपुट:10 का स्तर 1 है 3 का स्तर 2 है 211 का स्तर 2 है 140 का स्तर 3 है 162 का स्तर 3 है 100 का स्तर 3 है 146 का स्तर 3 है पूर्व>एल्गोरिदम
स्टार्टस्टेप 1 -> स्ट्रक्चर नोड स्ट्रक्चर नोड के रूप में एक नोड की संरचना बनाएं *बाएं, *दाएं इंट डेटा एंडस्टेप 2 -> नोड नोड बनाने के लिए फ़ंक्शन * न्यूनोड (इंट डेटा) नोड * अस्थायी =नया नोड अस्थायी-> डेटा =डेटा अस्थायी-> बाएं =अस्थायी-> दाएं =नल रिटर्न टेम्पस्टेप 3 -> नोड शून्य स्तर (नोड * रूट) के स्तर को खोजने के लिए फ़ंक्शन बनाएं यदि रूट =नल रिटर्न एंड एसटीएल कतार बनाएं <जोड़ी <स्ट्रक्चर नोड *, int>>que que.push({root, 1}) STL जोड़ी बनाएंpar Loop जबकि !que.empty() par =que.front() que.pop() प्रिंट par.first->डेटा और पैरा.सेकंड IF par.first->left que.push({ par.first->left, par.second + 1 }) END IF par.first->right que.push({ par.first-> दाएं, पैरा.सेकंड + 1}) एंडस्टॉप खत्म करें उदाहरण
#includeनेमस्पेस एसटीडी का उपयोग करना;//एक नोडस्ट्रक्ट नोड की संरचना{ int डेटा; स्ट्रक्चर नोड *बाएं, *दाएं;};//यह एक ट्रीवॉइड लेवल (नोड* रूट) के स्तर को प्रिंट करेगा {अगर (रूट ==NULL) रिटर्न; कतार <जोड़ी<स्ट्रक्चर नोड*, इंट>>क्यू; que.push ({रूट, 1}); जोड़ी<स्ट्रक्चर नोड*, इंट> बराबर; जबकि (! que.empty ()) { बराबर =que.front (); क्यू.पॉप (); cout <<"स्तर" < data <<" is " < left) que.push({ par.first->left, par.second + 1 }); if (par.first->right) que.push({ par.first->right, par.second + 1 }); }}// नोड्स बनाने के लिए फ़ंक्शन और इसलिए ट्रीनोड उत्पन्न करें * न्यूनोड (इंट डेटा) {नोड * अस्थायी =नया नोड; अस्थायी-> डेटा =डेटा; अस्थायी-> बाएँ =अस्थायी-> दाएँ =NULL; वापसी अस्थायी;} इंट मुख्य () {नोड * रूट =न्यूल; // यह एक नोड रूट =न्यूनोड (34) बनाएगा; रूट-> लेफ्ट =न्यूनोड (12); रूट-> राइट =न्यूनोड (50); रूट-> लेफ्ट-> लेफ्ट =न्यूनोड (11); रूट-> लेफ्ट-> राइट =न्यूनोड (54); स्तर (रूट); वापसी 0;} आउटपुट
यदि हम उपरोक्त प्रोग्राम चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा
34 का स्तर 112 का स्तर 2 है 50 का स्तर 2 है 11 का स्तर 3 है 54 का स्तर 3 है