Java Program To Find Out The Maximum Times Repeated Number From An Array
=================================================================================
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class MaxRepeatedNumber {
public static void main(String[] args) {
// Use Scanner Class Object To retrieve elements from the console
Scanner sc = new Scanner(System.in);
System.out.println("Enter the number of elements of an Array:");
Integer number = sc.nextInt();
int arr[] = new int[number];
// Adding elements into an array one by one
for (int i = 0; i < number; i++) {
arr[i] = sc.nextInt();
}
// Printing Elements Of an Array
System.out.println("Elements of an array are:");
for (int k : arr) {
System.out.print(k + ",");
}
// Create HashMap Object to store the elements of an Array
Map<Integer, Integer> map = new HashMap<Integer, Integer>();
// Iterate loop over array elements and insert element into HashMap
// HashMap elements keep track of keys with the values with frequencies
for (int i = 0; i < number; i++) {
int key = arr[i];
if (map.containsKey(key)) {
int freq = map.get(key);
freq++;
map.put(key, freq);
} else {
map.put(key, 1);
}
}
// A loop iterating over hashmap elements and store the max repeating element
// into variable res
int max_count = 0, res = 0;
for (Map.Entry<Integer, Integer> val : map.entrySet()) {
if (max_count < val.getValue()) {
res = val.getKey();
max_count = val.getValue();
}
}
// finally we are printing the element res which is having max frequency.
System.out.println("The Maximum Repeated Element In An Array:" + res);
}
}
Comments
Post a Comment