एक विरल मैट्रिक्स एक मैट्रिक्स है जिसमें अधिकांश तत्व 0 हैं। इसके लिए एक उदाहरण इस प्रकार दिया गया है।
नीचे दिए गए मैट्रिक्स में 5 शून्य हैं। चूंकि शून्यों की संख्या मैट्रिक्स के आधे तत्वों से अधिक है, यह एक विरल मैट्रिक्स है।
5 0 0 3 0 1 0 0 9
एक विरल मैट्रिक्स को लागू करने का कार्यक्रम इस प्रकार है।
उदाहरण
#include<iostream> using namespace std; int main () { int a[10][10] = { {0, 0, 9} , {5, 0, 8} , {7, 0, 0} }; int i, j, count = 0; int row = 3, col = 3; for (i = 0; i < row; ++i) { for (j = 0; j < col; ++j){ if (a[i][j] == 0) count++; } } cout<<"The matrix is:"<<endl; for (i = 0; i < row; ++i) { for (j = 0; j < col; ++j) { cout<<a[i][j]<<" "; } cout<<endl; } cout<<"The number of zeros in the matrix are "<< count <<endl; if (count > ((row * col)/ 2)) cout<<"This is a sparse matrix"<<endl; else cout<<"This is not a sparse matrix"<<endl; return 0; }
आउटपुट
The matrix is: 0 0 9 5 0 8 7 0 0 The number of zeros in the matrix are 5 This is a sparse matrix
उपरोक्त कार्यक्रम में, मैट्रिक्स में शून्य की संख्या की गणना करने के लिए लूप के लिए नेस्टेड का उपयोग किया जाता है। यह निम्नलिखित कोड स्निपेट का उपयोग करके प्रदर्शित किया जाता है।
for (i = 0; i < row; ++i) { for (j = 0; j < col; ++j) { if (a[i][j] == 0) count++; } }
शून्य की संख्या खोजने के बाद, मैट्रिक्स को नेस्टेड लूप का उपयोग करके प्रदर्शित किया जाता है। यह नीचे दिखाया गया है।
cout<<"The matrix is:"<<endl; for (i = 0; i < row; ++i) { for (j = 0; j < col; ++j) { cout<<a[i][j]<<" "; } cout<<endl; }
अंत में, शून्य की संख्या प्रदर्शित की जाती है। यदि मैट्रिक्स में शून्य की संख्या आधे से अधिक तत्वों से अधिक है, तो यह प्रदर्शित होता है कि मैट्रिक्स एक विरल मैट्रिक्स है अन्यथा मैट्रिक्स एक विरल मैट्रिक्स नहीं है।
cout<<"The number of zeros in the matrix are "<< count <<endl; if (count > ((row * col)/ 2)) cout<<"This is a sparse matrix"<<endl; else cout<<"This is not a sparse matrix"<<endl;