@XQF
2018-03-07T14:56:02.000000Z
字数 860
阅读 1610
数据结构与算法
[TOC
但是基本不这样考虑,因为不知道给出的数具体有多大,。,。假如是1000000000,。,
public class Solution {public int findMostFrequenceyInArray(int[] nums) {if (nums == null || nums.length == 0) {return 0;}Map<Integer, Integer> map = new HashMap<>();for (int i = 0; i < nums.length; i++) {Set<Integer> keySet = map.keySet();if (!keySet.contains(nums[i])) {map.put(nums[i], 1);} else {map.put(nums[i], map.get(nums[i]) + 1);}}//遍历map,之前不怎么用Iterator iterator = map.entrySet().iterator();int max = 0;int result = 0;while (iterator.hasNext()) {Map.Entry entry = (Map.Entry) iterator.next();int key = (int) entry.getKey();int value = (int) entry.getValue();System.out.println("key: " + key + " " + "value: " + value);if (value > max) {max = value;result = key;}}return result;}public static void main(String[] args) {Solution solution = new Solution();int[] nums = {1, 1, 1, 2, 3, 3, 3, 3, 3, 4, 4};System.out.println(solution.findMostFrequenceyInArray(nums));}}
