इस लेख में, हम समझेंगे कि कैसे निर्धारित किया जाए कि दिया गया मैट्रिक्स स्पार्स मैट्रिक्स है या नहीं। एक मैट्रिक्स को स्पार्स मैट्रिक्स कहा जाता है यदि उस मैट्रिक्स के अधिकांश एलिमेंट्स 0 हैं। इसका तात्पर्य है कि इसमें बहुत कम नॉन-जीरो एलिमेंट्स होते हैं।
उदाहरण
मान लीजिए हमारा इनपुट है:
Input matrix: 4 0 6 0 0 9 6 0 0
वांछित आउटपुट होगा:
Yes, the matrix is a sparse matrix
एल्गोरिदम
चरण 1 - शुरू करें चरण 2 - एक इंटीजर मैट्रिक्स घोषित करें: input_matrix चरण 3 - मान परिभाषित करें चरण 4 - दो फॉर-लूप्स का उपयोग करके मैट्रिक्स के प्रत्येक एलिमेंट पर पुनरावृति करें, उन एलिमेंट्स की संख्या गिनें जिनका मान 0 है चरण 5 - यदि जीरो एलिमेंट्स कुल एलिमेंट्स के आधे से अधिक हैं, तो यह स्पार्स मैट्रिक्स है, अन्यथा नहीं चरण 6 - परिणाम प्रदर्शित करें चरण 7 - रुकें
उदाहरण 1: मेन फंक्शन में सभी ऑपरेशन
यहां, हम सभी ऑपरेशन्स को 'main' फंक्शन के अंतर्गत बांधते हैं।
public class Sparse {
public static void main(String args[]) {
int input_matrix[][] = {
{ 4, 0, 6 },
{ 0, 0, 9 },
{ 6, 0, 0 }
};
System.out.println("मैट्रिक्स परिभाषित है: ");
int rows = 3;
int column = 3;
int counter = 0;
for (int i = 0; i < rows; i++) {
for (int j = 0; j < column; j++) {
System.out.print(input_matrix[i][j] + " ");
}
System.out.println();
}
for (int i = 0; i < rows; ++i)
for (int j = 0; j < column; ++j)
if (input_matrix[i][j] == 0)
++counter;
if (counter > ((rows * column) / 2))
System.out.println("\nहां, मैट्रिक्स एक स्पार्स मैट्रिक्स है");
else
System.out.println("\नहीं, मैट्रिक्स स्पार्स मैट्रिक्स नहीं है");
}
}
आउटपुट
मैट्रिक्स परिभाषित है: 4 0 6 0 0 9 6 0 0 हां, मैट्रिक्स एक स्पार्स मैट्रिक्स है
उदाहरण 2: ऑब्जेक्ट-ओरिएंटेड दृष्टिकोण
यहां, हम ऑपरेशन्स को फंक्शन्स में एनकैप्सुलेट करते हैं जो ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग को दर्शाता है।
public class Sparse {
static int rows = 3;
static int column = 3;
static void is_sparse(int input_matrix[][]){
int counter = 0;
for (int i = 0; i < rows; i++) {
for (int j = 0; j < column; j++) {
System.out.print(input_matrix[i][j] + " ");
}
System.out.println();
}
for (int i = 0; i < rows; ++i)
for (int j = 0; j < column; ++j)
if (input_matrix[i][j] == 0)
++counter;
if (counter > ((rows * column) / 2))
System.out.println("\nहां, मैट्रिक्स एक स्पार्स मैट्रिक्स है");
else
System.out.println("\नहीं, मैट्रिक्स स्पार्स मैट्रिक्स नहीं है");
}
public static void main(String args[]) {
int input_matrix[][] = { { 4, 0, 6 },
{ 0, 0, 9 },
{ 6, 0, 0 }
};
System.out.println("मैट्रिक्स परिभाषित है: ");
is_sparse(input_matrix);
}
}
आउटपुट
मैट्रिक्स परिभाषित है: 4 0 6 0 0 9 6 0 0 हां, मैट्रिक्स एक स्पार्स मैट्रिक्स है