201312-1 出現次數最多的數
阿新 • • 發佈:2018-12-06
在lettcode上學了用map,時間複雜度O(n)
java滿分程式碼奉上
import java.util.HashMap; import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); int[] numArr = new int[n]; HashMap<Integer, Integer> hashMap = new HashMap<>(); for(int i = 0; i < n; i++){ numArr[i] = scanner.nextInt(); hashMap.put(numArr[i], 0); } scanner.close(); int maxCount = 0; int minNum = 0; for(int num : numArr){ hashMap.put(num, hashMap.get(num) + 1); int count = hashMap.get(num); if(count > maxCount){ maxCount = count; minNum = num; } else if(count == maxCount && num < minNum){ minNum = num; } } System.out.println(minNum); } }