Java >> Java tutorial >  >> Java

Java-program til at bestemme, om en given matrix er en sparsom matrix

I denne tutorial lærer vi, hvordan man afgør, om en given matrix er en sparsom matrix. En matrix siges at være en sparsom matrix, hvis de fleste af elementerne i den matrix er 0. Men før du går videre, hvis du ikke er bekendt med begreberne for matrixen, så tjek artiklen Arrays i Java.

Nedenfor er den billedlige fremstilling af det samme.

Input: Indtast matrixelementerne:

1 4 0

0 0 0

4 0 0

Output: Det er en sparsom matrix.

Program 1:For at bestemme, om den givne matrix er en sparsom matrix

I dette program vil vi lære at bestemme, om en given matrix er en sparsom matrix, når værdierne er brugerdefinerede. Her vil vi bede brugeren om at indtaste værdierne, og derefter vil vi kontrollere, om den givne matrix er en sparsom matrix eller ej.

Algorithme

  1. Start
  2. Deklarer variabler for at gemme størrelsen af ​​matrixen.
  3. Bed brugeren om at initialisere antallet af rækker og kolonner.
  4. Deklarer en matrix.
  5. Bed brugeren om at initialisere elementerne i matrixen.
  6. Udskriv den originale matrix
  7. Deklarer en variabel for at gemme størrelsen af ​​matrixen.
  8. Deklarer en variabel for at tælle antallet af 0 elementer i matrixen.
  9. Brug en løkke til at tælle alle nul-elementerne.
  10. Forøg antallet, hvis der findes 0 elementer.
  11. Tjek, om antallet er større end halvdelen af ​​størrelsen.
  12. Hvis den er større, så udskriv den som en sparsom matrix.
  13. Ellers udskrives det ikke en sparsom matrix.
  14. Stop.

Nedenfor er koden til det samme.

//Java Program to check whether the given matrix is sparse or not*/
import java.util.Scanner; 
public class Main 
{ 
    public static void main(String[] args) 
    { 
        // declare variables 
        int m, n;  
        // To take input from the user
        Scanner sc = new Scanner(System.in); 
        System.out.println("Enter the number of rows ");   
        // Initialize the number of rows 
        m = sc.nextInt();   
        System.out.println("Enter the number of columns ");  
        // Initialize the number of columns 
        n = sc.nextInt();   
        // declare a mxn order array 
        int a[][] = new int[m][n];   
        System.out.println("Enter all the values of matrix "); 
        // Initialize the matrix elements
        for (int i = 0; i < m; i++) 
        { 
            for (int j = 0; j < n; j++) 
            { 
                a[i][j] = sc.nextInt();                 
            } 
        }    
        System.out.println("Original Matrix:"); 
        // print the original matrix 
        for (int i = 0; i < m; i++) 
        { 
            for (int j = 0; j < n; j++) 
            { 
                    System.out.print(a[i][j] + " "); 
            } 
            System.out.println(""); 
        } 
        int size= m*n;   //Stores the size of the matrix 
        int count=0;    //Variable to check for the number of 0 elements        
        //Loop to count all zero element present in matrix    
        for(int i = 0; i < m; i++)
        {    
            for(int j = 0; j < n; j++)
            {    
                if(a[i][j] == 0)    //Check if element is 0 or not
                    count++;    //Increment the count if 0 element is found
            }    
        }        
        if(count>(size/2))
        System.out.println("It is a sparse matrix");
        else
        System.out.println("It is not a sparse matrix");           
    } 
}


Indtast antallet af rækker 3
Indtast antallet af kolonner 3
Indtast alle værdierne af matrix 1 2 0 0 0 0 0 0 0
Original Matrix:
1 2 0
0 0 0
0 0 0
Det er en sparsom matrix

Program 2:For at bestemme, om den givne matrix er en sparsom matrix

I dette program vil vi lære at bestemme, om en given matrix er en sparsom matrix, når værdierne er foruddefinerede. Her er elementerne til matrixen foruddefineret i programmet. Så baseret på værdierne af den matrix vil vi kontrollere, om den givne matrix er en sparsom matrix eller ej.

Algorithme

  1. Start
  2. Deklarer og initialiser en matrix.
  3. Deklarer variabler for at gemme antallet af rækker og kolonner i en matrix.
  4. Udskriv den originale matrix.
  5. Deklarer en variabel for at gemme størrelsen af ​​matrixen.
  6. Deklarer en variabel for at tælle antallet af 0 elementer i matrixen.
  7. Brug en løkke til at tælle alle nul-elementerne.
  8. Forøg antallet, hvis der findes 0 elementer.
  9. Tjek, om antallet er større end halvdelen af ​​størrelsen.
  10. Hvis den er større, så udskriv den som en sparsom matrix.
  11. Ellers udskrives det ikke en sparsom matrix.
  12. Stop.

Nedenfor er koden til det samme.

//Java Program to check whether the given matrix is sparse or not*/
public class Main 
{ 
    public static void main(String[] args) 
    {         
        // declare and initialize a matrix 
        int a[][] = {{ 2, 9, 8 }, { 7, 6, 4 }, { 3, 9, 2 } };   
        int m=a.length;   //Stores the number of rows in a matrix
        int n=a[0].length;   //Stores the number of columns in a matrix 
         // print the original matrix 
        System.out.println("Original Matrix:"); 
        for (int i = 0; i < m; i++) 
        { 
            for (int j = 0; j < n; j++) 
            { 
                    System.out.print(a[i][j] + " "); 
            } 
            System.out.println(""); 
        }   
        int size= m*n;   //Stores the size of the matrix        
        int count=0;    //Variable to check for the number of 0 elements        
        //Loop to count all zero element present in matrix    
        for(int i = 0; i < m; i++)
        {    
            for(int j = 0; j < n; j++)
            {    
                if(a[i][j] == 0)    //Check if element is 0 or not
                    count++;    //Increment the count if 0 element is found            }    
        }        
        if(count>(size/2))
        System.out.println("It is a sparse matrix");
        else
        System.out.println("It is not a sparse matrix");           
    } 
}


Original matrix:
2 9 8
7 6 4
3 9 2
Det er ikke en sparsom matrix


Java tag