Java问题:对应每组输入的正整数,按照从大到小的顺序,输出每个数字出现的次数,每组输出空一行
时间: 2024-10-27 09:08:14 浏览: 8
在Java中,你可以使用`HashMap`或者`TreeMap`数据结构来存储每个数字及其出现的次数,并配合遍历数组来实现这个功能。这里是一个简单的示例:
```java
import java.util.*;
public class Main {
public static void main(String[] args) {
int[][] input = {{5, 2, 3, 4, 5}, {1, 2, 2, 3, 3, 3, 4, 5}}; // 示例输入
for (int[] numbers : input) {
Map<Integer, Integer> frequencyMap = new TreeMap<>(); // 使用TreeMap保证排序
for (int num : numbers) {
frequencyMap.put(num, frequencyMap.getOrDefault(num, 0) + 1);
}
for (Map.Entry<Integer, Integer> entry : frequencyMap.entrySet()) {
System.out.println(entry.getKey() + ": " + entry.getValue());
System.out.println(); // 每组输出后换行
}
}
}
}
```
在这个代码里,我们首先创建了一个`input`数组来存储多组输入。然后遍历每一组数字,将它们添加到`frequencyMap`中。因为`TreeMap`是自底向上排序的,所以打印出来的数字会按从大到小的顺序。
如果你想要了解如何优化这个代码,或者遇到特定的输入情况下的问题,可以继续提问:
阅读全文