Java >> Java tutorial >  >> Java

Java-program til at tælle antallet af forekomst af et element

I denne øvelse lærer vi, hvordan man finder forekomsten af ​​et element i en matrix. Men før du går videre, hvis du ikke er bekendt med begreberne for arrayet, så tjek artiklen Arrays in Java.

Input: 3 2 1 4 5 6 3 7

Output:

Element, der skal søges i:3

Forekomsten af ​​elementet:2

Program 1:Find forekomsten af ​​et element i et array

I denne metode vil vi se, hvordan man finder forekomsten af ​​hvert element i et array ved hjælp af loops.

Algorithme

  1. Start
  2. Deklarer matrixstørrelsen.
  3. Bed brugeren om at initialisere matrixstørrelsen.
  4. Deklarer arrayet.
  5. Bed brugeren om at initialisere array-elementerne.
  6. Indtast det element, hvis frekvens du vil vide.
  7. Deklarer en forekomstvariabel og initialiser den til 0.
  8. Brug af en for-løkke gennem alle elementerne i arrayet.
  9. Hvis elementet matches med matrixelementet, skal forekomsten øges.
  10. Udskriv forekomsten af ​​hvert element.
  11. Stop

Nedenstående program viser, hvordan man finder forekomsten af ​​hvert element i et array ved hjælp af loops.

/*Java Program to find the occurence of each element in an array*/
import java.util.*;  
import java.util.Arrays; 

//Driver Code
public class Main  
{  
   public static void main(String args[])   
   {  
       Scanner sc=new Scanner(System.in);

      int n;    //Declare array size
      System.out.println("Enter the total number of elements ");
      n=sc.nextInt();     //Initialize array size

      int arr[]=new int[n];   //Declare array
      System.out.println("Enter the elements of the array ");
      for(int i=0; i<n ;i++)     //Initialize array
      {
          arr[i]=sc.nextInt();
      }
      
        //Enter the element whose frequency you want to know
        System.out.println("Enter the element whose frequency you want to know");
        int ele=sc.nextInt();
        int occ=0;
        
        // Traverse through map and check frequencies 
        for(int i=0;i<n;i++)
        {
            if(ele==arr[i])
            {
                occ++; //Increment the occurrence once the element is found
            }
        }
        //Print the element and its frequency
        System.out.println(ele+" occurred "+occ+" times ");
        
       
   }
}


Indtast det samlede antal elementer 10
Indtast elementerne i arrayet 2 7 6 7 7 8 9 5 7 9
Indtast det element, hvis frekvens du vil vide 7
7 skete 4 gange

Program 2:Find forekomsten af ​​et element i et array

I denne metode vil vi se, hvordan man finder forekomsten af ​​hvert element i et array ved hjælp af et hashmap.

Algorithme

  1. Start
  2. Deklarer matrixstørrelsen.
  3. Bed brugeren om at initialisere matrixstørrelsen.
  4. Deklarer arrayet.
  5. Bed brugeren om at initialisere array-elementerne.
  6. Indsæt alle array-elementer i hashmap.
  7. Rejs gennem array-elementer og tæl frekvenser ved hjælp af en for-løkke.
  8. Indtast det element, hvis frekvens du vil vide.
  9. Gennemgå kortet igen og kontroller frekvenserne.
  10. Udskriv elementets frekvens.
  11. Stop

Nedenstående program viser, hvordan man finder forekomsten af ​​hvert element i et array ved hjælp af et hash-kort.

/*Java Program to find the occurence of each element in an array*/
import java.util.*;  
import java.util.Arrays; 

//Driver Code
public class Main  
{  
   public static void main(String args[])   
   {  
       Scanner sc=new Scanner(System.in);

      int n;    //Declare array size
      System.out.println("Enter the total number of elements ");
      n=sc.nextInt();     //Initialize array size

      int arr[]=new int[n];   //Declare array
      System.out.println("Enter the elements of the array ");
      for(int i=0; i<n ;i++)     //Initialize array
      {
          arr[i]=sc.nextInt();
      }
      
      Map<Integer, Integer> mp = new HashMap<>(); 
       // Traverse through array elements and count frequencies
       for (int i = 0; i < n; i++) 
        { 
            if (mp.containsKey(arr[i]))  
            { 
                mp.put(arr[i], mp.get(arr[i]) + 1); 
            }  
            else
            { 
                mp.put(arr[i], 1); 
            } 
        } 
        
        //Enter the element whose frequency you want to know
        System.out.println(“Enter the element whose frequency you want to know”);
        int ele=sc.nextInt();
        int occ=0;
        
        // Traverse through map and check frequencies 
        for (Map.Entry<Integer, Integer> entry : mp.entrySet()) 
        { 
            if(ele==entry.getKey())
            {
                occ=entry.getValue();
            }
        }
        //Print the element and its frequency
        System.out.println(ele+" occurred "+occ+" times ");
        
       
   }
}


Indtast det samlede antal elementer 10
Indtast elementerne i arrayet 8 7 6 59 7 9 9 5 7 9
Indtast det element, hvis frekvens du vil vide 9
9 sket 3 gange


Java tag