কম্পিউটার

C++ এ দুটি গাছ অভিন্ন কিনা তা নির্ধারণ করতে কোড লিখুন


এই সমস্যায়, আমাদের দুটি গাছ দেওয়া হয়। আমাদের কাজ হল দুটি গাছ অভিন্ন কিনা তা পরীক্ষা করার জন্য একটি কোড লেখা।

দুটি গাছকে অভিন্ন বলা হয় যদি অ্যারের উপাদানগুলির মান এবং অভিযোজন একই থাকে৷

উদাহরণ

C++ এ দুটি গাছ অভিন্ন কিনা তা নির্ধারণ করতে কোড লিখুন

C++ এ দুটি গাছ অভিন্ন কিনা তা নির্ধারণ করতে কোড লিখুন


যেহেতু উভয় গাছের একই মান এবং উপাদানের অবস্থান উভয় গাছই অভিন্ন।

দুটি গাছ অভিন্ন কিনা তা পরীক্ষা করার জন্য, আমরা নোড নোড থেকে প্রতিটি নোডে যাব এবং ধাপে ধাপে তাদের সমতা পরীক্ষা করব এবং যদি কোনও বিন্দুতে নোডগুলি সমান রিটার্ন না হয় -1, গাছটিকে চিহ্নিত করে অভিন্ন নয় এবং যদি পুরো গাছটি অতিক্রম করা হয়েছে বা উভয় গাছই খালি রিটার্ন 1, ইঙ্গিত করে যে গাছগুলি অভিন্ন৷

উপরের সমাধানের কার্যকারিতা চিত্রিত করার জন্য প্রোগ্রাম,

উদাহরণ

#include <iostream>
using namespace std;
class node{
   public:
   int data;
   node* left;
   node* right;
};
node* insertNode(int data){
   node* Node = new node();
   Node->data = data;
   Node->left = NULL;
   Node->right = NULL;
   return(Node);
}
int isIdentricalTrees(node* tree1, node* tree2){
   if (tree1 == NULL &amp;&amp; tree2 == NULL)
      return 1;
   if (tree1 != NULL &amp;&amp; tree2 != NULL){
      return( tree1->data == tree2->data &amp;&amp; isIdentricalTrees(tree1->left,
         tree2->left) &amp;&amp; isIdentricalTrees(tree1->right, tree2->right) );
   }
   return 0;
}
int main(){
   node *root1 = insertNode(4);
   node *root2 = insertNode(4);
   root1->left = insertNode(5);
   root1->right = insertNode(0);
   root1->left->left = insertNode(1);
   root1->left->right = insertNode(9);
   root1->right->left = insertNode(7);
   root2->left = insertNode(5);
   root2->right = insertNode(0);
   root2->left->left = insertNode(1);
   root2->left->right = insertNode(9);
   root2->right->left = insertNode(7);
   cout<<"Both the given trees are ";
   if(isIdentricalTrees(root1, root2))
      cout<<"identical";
   else
      cout<<"identical";
   return 0;
}

আউটপুট

Both the given trees are identical

  1. C++ এ দুটি বাইনারি ট্রি মার্জ করার প্রোগ্রাম

  2. C++ এ দুই বা ততোধিক ধনাত্মক পূর্ণসংখ্যার যোগফল হিসেবে N লেখার উপায়

  3. C++ এ দুটি বাইনারি অনুসন্ধান গাছের সমস্ত উপাদান

  4. C++ এ দুটি বাইনারি ট্রি মার্জ করুন