বাইনারি ট্রি দেওয়া হয়েছে, কাজটি হল 1 থেকে n
থেকে শুরু করে একটি নোডে সংরক্ষিত প্রতিটি কী-এর সাথে সংশ্লিষ্ট স্তরটি প্রিন্ট করা।
উপরের গাছে, নোডগুলি হল −
13 লেভেলে 10 এবং 2140 লেভেলে 211, লেভেল 3 এ 162, 100 এবং 146
কী দেওয়া হলে প্রোগ্রামটিকে অবশ্যই সেই নির্দিষ্ট কীটির স্তর প্রিন্ট করতে হবে।
উদাহরণ
ইনপুট:10 3 211 140 162 100 146 আউটপুট:10-এর স্তর হল 3-এর 1 স্তর হল 211-এর 2 স্তর হল 140-এর 2 স্তর হল 162-এর 3 স্তর হল 162-এর 3 স্তর হল 100-এর 3 স্তর হল 13-এর স্তর পূর্বে>অ্যালগরিদম
STARTধাপ 1 -> একটি নোডের একটি কাঠামো তৈরি করুন struct node struct node *left, *right int data EndStep 2 -> একটি নোড নোড তৈরি করতে ফাংশন* newnode(int data) node *temp =new node temp-> data =data temp->left =temp->right=NULL return tempstep 3 -> একটি নোড void লেভেলের লেভেল খোঁজার জন্য ফাংশন তৈরি করুন (Node* root) IF root=NULL Return End STL সারি তৈরি করুন>que que.push({root, 1}) STL পেয়ার তৈরি করুন par লুপ যখন !que.empty() par =que.front() que.pop() প্রিন্ট par.first->ডেটা এবং par.second IF par.first->left que.push({ par.first->left, par.second + 1 }) END IF par.first->right que.push({ par.first-> ডান, par.second + 1 }) End EndSTOP উদাহরণ
#includeNamespace std;//Nodestruct Node এর স্ট্রাকচার ব্যবহার করে{int data; struct Node *left, *right;};//এটি একটি ট্রিভয়েড লেভেলের লেভেল প্রিন্ট করবে (নোড* রুট){ যদি (root==NULL) রিটার্ন করে; queue >que; que.push({root, 1}); pair par; যখন (!que.empty()) { par =que.front(); que.pop(); cout <<"" < data <<" এর স্তর হল " < left) que.push({ par.first->left, par.second + 1 }); যদি (par.first->right) que.push({ par.first->right, par.second + 1 }); }}//নোড তৈরি করতে ফাংশন এবং তাই ট্রিনোড* নিউনোড(int ডেটা){ নোড* টেম্প =নতুন নোড তৈরি করে; temp->ডেটা =ডেটা; temp->left =temp->right =NULL; রিটার্ন temp;}int main(){ Node* root =NULL; //এটি একটি নোড রুট তৈরি করবে =newnode(34); root->left =newnode(12); root->right =newnode(50); root->left->left =newnode(11); root->left->right =newnode(54); স্তর (মূল); রিটার্ন 0; আউটপুট
যদি আমরা উপরের প্রোগ্রামটি চালাই তাহলে এটি নিম্নলিখিত আউটপুট তৈরি করবে
34-এর স্তর হল 12-এর 1স্তর হল 50-এর 2স্তর হল 11-এর 2স্তর হল 54-এর 3স্তর হল 3