The Most frequent Number in an array

后端 未结 9 1671
粉色の甜心
粉色の甜心 2021-01-17 14:14

I have this Array i wrote a function MostFreq that takes an array of integers and return 2 values : the more frequent number in the array and its frequency check this code i

9条回答
  •  刺人心
    刺人心 (楼主)
    2021-01-17 15:03

    Lets suppose the array is as follows :

    int arr[] = {10, 20, 10, 20, 30, 20, 20,40,40,50,15,15,15};
    
    int max = 0;
    int result = 0;
    Map map = new HashMap<>();
    
    for (int i = 0; i < arr.length; i++) {
        if (map.containsKey(arr[i])) 
            map.put(arr[i], map.get(arr[i]) + 1);
        else
            map.put(arr[i], 1);
        int key = map.keySet().iterator().next();
        if (map.get(key) > max) {
            max = map.get(key) ;
            result = key;
        }
    }
    System.out.println(result);
    

    Explanation:

    In the above code I have taken HashMap to store the elements in keys and the repetition of the elements as values. We have initialized variable max = 0 ( max is the maximum count of repeated element) While iterating over elements We are also getting the max count of keys.

    The result variable returns the keys with the mostly repeated.

提交回复
热议问题