কম্পিউটার

একটি প্রদত্ত ম্যাট্রিক্স স্পার্স নাকি C++-এ নয় তা পরীক্ষা করুন


এখানে আমরা দেখব কিভাবে একটি ম্যাট্রিক্স স্পারস কিনা তা পরীক্ষা করা যায়। একটি স্পার্স ম্যাট্রিক্স হল একটি ম্যাট্রিক্স যেখানে বেশিরভাগ উপাদান 0। একটি স্পার্স ম্যাট্রিক্সের সংজ্ঞা হল, যদি উপাদানগুলির 2/3য় অংশ 0 হয়, তাহলে ম্যাট্রিক্সটিকে একটি স্পার্স ম্যাট্রিক্স হিসাবে চিহ্নিত করা হয়। এখানে একটি স্পার্স ম্যাট্রিক্সের উদাহরণ।

একটি প্রদত্ত ম্যাট্রিক্স স্পার্স নাকি C++-এ নয় তা পরীক্ষা করুন

এটি পরীক্ষা করার জন্য, আমরা ম্যাট্রিক্সে 0s সংখ্যা গণনা করব, তারপর যদি সেই সংখ্যাটি মোট উপাদানের 2/3-এর বেশি হয়, তাহলে এটি স্পার্স।

উদাহরণ

#include <iostream>
#include <cmath>
#define MAX 5
using namespace std;
bool isSparseMatrix(int arr[][MAX], int m, int n) {
   int counter = 0;
   for (int i = 0; i < m; i++)
   for (int j = 0; j <n; j++)
   if (arr[i][j] == 0)
      counter++;
   return (counter > (2*(m * n) / 3));
}
int main() {
   int matrix[MAX][MAX] = {
      {0, 2, 0, 0, 0},
      {8, 0, 0, 0, 0},
      {0, 3, 0, 0, 0},
      {0, 9, 0, 3, 0},
      {0, 0, 0, 0, 4}
   };
   if(isSparseMatrix(matrix, MAX, MAX)){
      cout << "This is sparse matrix";
   } else {
      cout << "This is not sparse matrix";
   }
}

আউটপুট

This is sparse matrix

  1. একটি প্রদত্ত ট্রি গ্রাফ রৈখিক নাকি C++ এ নয় তা পরীক্ষা করুন

  2. একটি ম্যাট্রিক্স বাইনারি ম্যাট্রিক্স নাকি C++ এ নয় তা পরীক্ষা করার জন্য প্রোগ্রাম

  3. একটি প্রদত্ত বাইনারি ট্রি একটি AVL গাছ কিনা তা পরীক্ষা করার জন্য C++ প্রোগ্রাম

  4. এটি একটি স্পার্স ম্যাট্রিক্স কিনা তা পরীক্ষা করার জন্য C++ প্রোগ্রাম