In this tutorial, we will see how to find maximum and minimum occurring character in a string through a Java code. This guide provides a step-by-step explanation and sample code.
aabbbccc
In the above example, character ‘a’ occurred minimum number of times (i.e 2 times) compared to characters ‘b’ and ‘c’. Character ‘c’ occurred maximum number of times(i.e 3 times).
Algorithm:
Step 1: Create an array to store the frequency of each character.
Step 2: Iterate over the string and for each character, increase the corresponding index in the frequency array.
Step 3: Consider two variables to store the maximum and minimum frequencies and their corresponding characters.
Step 4: Traverse the frequency array to find the maximum and minimum values.
Step 5: Display the most and least frequent character in a string.
Sample Java Code:
class MaxMinChar { public static void main(String[] args) { String str="an apple"; int n=str.length(); int[] freq=new int[256]; for(int i=0;i<n;i++) { char ch=str.charAt(i); if(ch!=' ') { freq[ch]++; } } int max=-1; int min=Integer.MAX_VALUE; char maxChar=' '; char minChar=' '; for(int i=0;i<256;i++) { if(freq[i]>0) { if(freq[i]>max) { max=freq[i]; maxChar=(char)i; } if(freq[i]<min) { maxChar=freq[i]; minChar=(char)i; } } } System.out.println("Maximum Occurring Character is: "+maxChar); System.out.println("Minimum Occurring Character is: "+minChar); } }
Output:
Maximum Occurring Character is: a Minimum Occurring Character is: e