根据整型数组统计该数组所有整型元素出现的频率(当数组长度足够时即可近似得到概率)

根据整型数组统计该数组所有整型元素出现的频率(当数组长度足够时即可近似得到概率)

import java.util.HashMap;
import java.util.Map;
import java.util.Set;

public class CProbability {
    private CProbability() {}

    public static Map<Integer, Double> statistics(int[] arr) {
        Map<Integer, Double> probability = new HashMap<>();
        for (int i = 0; i < arr.length; i++) {
            probability.putIfAbsent(arr[i], 0.0);
            probability.put(arr[i], probability.get(arr[i]) + 1.0);
        }
        Set<Map.Entry<Integer, Double>> set = probability.entrySet();
        for (Map.Entry<Integer, Double> entry : set) {
            Double value = probability.get(entry.getKey()) / arr.length;
            probability.put(entry.getKey(), value);
        }
        return probability;
    }
}

版权声明:本文为HuanCaoO原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。