কম্পিউটার

C++ এ স্ট্রিং হিসাবে উপস্থাপিত একটি গাছে k-তম স্তরে নোডের পণ্য


একটি স্ট্রিং বিন্যাসে ডেটা সহ নোডের ট্রি দিয়ে দেওয়া হয়েছে এবং কাজটি হল একটি বাইনারি ট্রিতে k-ম স্তরে নোডগুলির গুণফল খুঁজে বের করা। একটি গাছের প্রতিটি নোডে তিনটি জিনিস থাকে যেমন ডেটা অংশ, বাম সাবট্রির জন্য বাম পয়েন্টার এবং ডান সাবট্রির জন্য ডান পয়েন্টার৷

বাইনারি ট্রির স্তর 0 নম্বর থেকে শুরু হয় এবং এটি 'n' পর্যন্ত যেতে পারে যা যেকোনো ধনাত্মক সংখ্যা হতে পারে। সুতরাং, আমাদেরকে 'k' স্তর দেওয়া হয়েছে এবং প্রোগ্রামটিকে অবশ্যই প্রদত্ত 'k' স্তরে নোডের গুণফল গণনা করতে হবে।

বাইনারি ট্রিতে, যদি ধরা যাক k=2

এর মান দিয়ে আমাদের দেওয়া হয়েছে

সুতরাং লেভেল 2 এ নোড হল − 40, 50, 60

পণ্য=40*50*60 =1,20,000

C++ এ স্ট্রিং হিসাবে উপস্থাপিত একটি গাছে k-তম স্তরে নোডের পণ্য

ইনপুট

<প্রে>(1(2(3()())(4()(5()()))(6(7()())(8()())))K =1

আউটপুট

 k =12 স্তরে নোডের পণ্য

ইনপুট

(0(5(6()())(4()(9()()))(7(1()())(3()()))"k =2 

আউটপুট

লেভেল k =72 এ নোডের পণ্য

অ্যালগরিদম

StartStep 1→ k-th স্তরে নোড গণনা করার ফাংশন ঘোষণা করুন int পণ্য (স্ট্রিং ট্রি, int k) int স্তর ঘোষণা করুন =-1 ঘোষণা করুন int পণ্য =1 ঘোষণা করুন int আকার =tree.length() int i =এর জন্য লুপ 0 এবং i <সাইজ এবং i++ IF tree[i] ='(' Set level++ End Else IF tree[i] =')' সেট লেভেল— End Else IF লেভেল =k সেট পণ্য *=(ট্রি[i] - '0 ') শেষ শেষ শেষ পণ্য ফেরত দিন ধাপ 2→ প্রধান() স্ট্রিং ট্রি ঘোষণা করুন ="(1(2(3()())(4()(5()())))(6(7()() )(8()()))" ঘোষণা করুন int k =1 কল পণ্য(বৃক্ষ, কে)স্টপ

উদাহরণ

#include নেমস্পেস ব্যবহার করে std;//kth levelint পণ্যে পণ্য খোঁজা (স্ট্রিং ট্রি, int k){ int স্তর =-1; int পণ্য =1; int size =tree.length(); জন্য (int i =0; i 
 

            
  1. C++-এ N-ary Tree Level Order Traversal

  2. C++ এ সম্পূর্ণ ট্রি নোড গণনা করুন

  3. C++ এ বাইনারি ট্রিতে সর্বোচ্চ স্তরের পণ্য খুঁজুন

  4. C++ প্রোগ্রামিং-এ একটি বাইনারি ট্রিতে সমস্ত নোডের লেভেল প্রিন্ট করুন।