किसी दिए गए मैट्रिक्स में, जब अधिकांश तत्व शून्य होते हैं, तो हम इसे विरल मैट्रिक्स कहते हैं। उदाहरण -3 x3 मैट्रिक्स
1 1 0 0 0 2 0 0 0
इस मैट्रिक्स में, अधिकांश तत्व शून्य हैं, इसलिए यह विरल मैट्रिक्स है।
समस्या
जांचें कि मैट्रिक्स एक विरल मैट्रिक्स है या नहीं।
समाधान
-
मान लें कि मैट्रिक्स में शून्य (पंक्ति * कॉलम)/2 से बड़ा है।
-
फिर, मैट्रिक्स एक विरल मैट्रिक्स है अन्यथा नहीं।
कार्यक्रम
यह जांचने का कार्यक्रम निम्नलिखित है कि दिया गया मैट्रिक्स विरल मैट्रिक्स है या नहीं -
#include<stdio.h> #include<stdlib.h> int main(){ int row,col,i,j,a[10][10],count = 0; printf("Enter row\n"); scanf("%d",&row); printf("Enter Column\n"); scanf("%d",&col); printf("Enter Element of Matrix1\n"); for(i = 0; i < row; i++){ for(j = 0; j < col; j++){ scanf("%d",&a[i][j]); } } printf("Elements are:\n"); for(i = 0; i < row; i++){ for(j = 0; j < col; j++){ printf("%d\t",a[i][j]); } printf("\n"); } /*checking sparse of matrix*/ for(i = 0; i < row; i++){ for(j = 0; j < col; j++){ if(a[i][j] == 0) count++; } } if(count > ((row * col)/2)) printf("Matrix is a sparse matrix \n"); else printf("Matrix is not sparse matrix\n"); }
आउटपुट
जब उपरोक्त प्रोग्राम को निष्पादित किया जाता है, तो यह निम्नलिखित परिणाम उत्पन्न करता है -
Run 1: Enter row 3 Enter Column 2 Enter Element of Matrix1 1 0 2 0 2 0 Elements are: 1 0 2 0 2 0 Matrix is not sparse matrix Run 2: Enter row 3 Enter Column 2 Enter Element of Matrix1 1 0 0 0 0 0 Elements are: 1 0 0 0 0 0 Matrix is a sparse matrix