Python program to find the frequency of each element in the array

python tutorials and learn python

Created with Sketch.

Python program to find the frequency of each element in the array

In this program, we have an array of elements to count the occurrence of its each element. One of the approaches to resolve this problem is to maintain one array to store the counts of each element of the array. Loop through the array and count the occurrence of each element as frequency and store it in another array fr.

  1. 1    2   8  3   2   2   2   5   1

In the given array, 1 has appeared two times, so its frequency is 2, and 2 has appeared four times so have frequency 4 and so on.

ALGORITHM:

  • STEP 1: Declare and initialize an array arr.
  • STEP 2: Declare another array fr with the same size of array arr. It is used to store the frequencies of elements present in the array.
  • STEP 3: Variable visited will be initialized with the value -1. It is required to mark an element visited that is, it helps us to avoid counting the same element again.
  • STEP 4: The frequency of an element can be counted using two loops. One loop will be used to select an element from an array, and another loop will be used to compare the selected element with the rest of the array.
  • STEP 5: Initialize count to 1 in the first loop to maintain a count of each element. Increment its value by 1 if a duplicate element is found in the second loop since we have counted this element and didn’t want to count it again. Mark this element as visited by setting fr[j] = visited. Store count of each element to fr.
  • STEP 6: Finally, print out the element along with its frequency.

PROGRAM:

  1. #Initialize array   
  2. arr = [128322251];
  3. #Array fr will store frequencies of element  
  4. fr = [None] * len(arr);
  5. visited = –1;
  6. for i in range(0, len(arr)):
  7.     count = 1;
  8.     for j in range(i+1, len(arr)):
  9.         if(arr[i] == arr[j]):
  10.             count = count + 1;
  11.             #To avoid counting same element again  
  12.             fr[j] = visited;
  13.     if(fr[i] != visited):
  14.         fr[i] = count;
  15. #Displays the frequency of each element present in array  
  16. print(“———————“);
  17. print(” Element | Frequency”);
  18. print(“———————“);
  19. for i in range(0, len(fr)):
  20.     if(fr[i] != visited):
  21.         print(”    “ + str(arr[i]) + ”    |    “ + str(fr[i]));
  22. print(“———————“);

Output:

----------------------------------------
Element | Frequency
----------------------------------------
1           |         2
2           |         4
8           |         1
3           |         1
5           |         1
----------------------------------------

 

Leave a Reply

Your email address will not be published. Required fields are marked *