Java Program to Check if it is a Sparse Matrix

This is the java program to find out a given matrix is sparse matrix or not. Sparse matrix contains zero elements above a certain threshold. This threshold is given by (n*m)/2, where n and m are the rows and columns in matrix. Hence, if a matrix contains more than nm/2 mumber of zeros it is sparse matrix otherwise not.

Here is the source code of the Java Program to Check if it is a Sparse Matrix. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.

//This is a sample program to check whether the matrix is sparse matrix or not
//The complexity of the code is O(n^2)
import java.util.Scanner;

public class Sparsity_Matrix
{
public static void main(String args[])
{
Scanner sc = new Scanner(System.in);
System.out.println("Enter the dimensions of the matrix: ");
int m = sc.nextInt();
int n = sc.nextInt();
double[][] mat = new double[m][n];
int zeros = 0;
System.out.println("Enter the elements of the matrix: ");
for(int i=0; i<m; i++)
{
for(int j=0; j<n; j++)
{
mat[i][j] = sc.nextDouble();
if(mat[i][j] == 0)
{
zeros++;
}
}
}

if(zeros > (m*n)/2)
{
System.out.println("The matrix is a sparse matrix");
}
else
{
System.out.println("The matrix is not a sparse matrix");
}

sc.close();
}
}


Output:

$javac Sparsity_matrix.java$ java Sparsity_matrix
Enter the dimensions of the matrix:
2 3
Enter the elements of the matrix:
1 0 0
2 1 1
The matrix is not a sparse matrix

$javac Sparsity_matrix.java$ java Sparsity_matrix
Enter the dimensions of the matrix:
3 4
Enter the elements of the matrix:
1 0 0 0
0 1 0 0
0 0 1 1
The matrix is a sparse matrix