我想用java实现数组中输入的每个元素出现的个数
输入格式输入的第一行包含一个整数n,表示记录条数。第二行输入n个整数,依次表示记录中的每个值(1<=n<=1000)。输出格式输出一行,包含n个整数,由空格分隔,依次表示...
输入格式
输入的第一行包含一个整数n,表示记录条数。
第二行输入n个整数,依次表示记录中的每个值(1<=n<=1000)。
输出格式
输出一行,包含n个整数,由空格分隔,依次表示每条记录中的值是第几次出现。
样例输入
5
1 2 1 1 3
样例输出
1 1 2 3 1
-----------
请高手们告诉我怎么用java来实现,我是初学者。 展开
输入的第一行包含一个整数n,表示记录条数。
第二行输入n个整数,依次表示记录中的每个值(1<=n<=1000)。
输出格式
输出一行,包含n个整数,由空格分隔,依次表示每条记录中的值是第几次出现。
样例输入
5
1 2 1 1 3
样例输出
1 1 2 3 1
-----------
请高手们告诉我怎么用java来实现,我是初学者。 展开
2个回答
展开全部
public class Main{
public String [] getArray(){
return new String []{};
}
public static void main(String[] args) throws Exception{
Main m = new Main();
String sr [] = m.getArray();
}
}
public String [] getArray(){
return new String []{};
}
public static void main(String[] args) throws Exception{
Main m = new Main();
String sr [] = m.getArray();
}
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你可以使用Java中的HashMap来实现统计每个数字出现的次数,然后将结果输出。具体代码如下:
```java
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int[] arr = new int[n];
// 读入n个整数
for (int i = 0; i < n; ++i) {
arr[i] = scanner.nextInt();
}
// 使用HashMap统计每个数字出现的次数
Map<Integer, Integer> map = new HashMap<>();
for (int x : arr) {
if (!map.containsKey(x)) {
map.put(x, 1);
} else {
map.put(x, map.get(x) + 1);
}
}
// 输出每个数字出现的次数
for (int i = 0; i < n; ++i) {
System.out.print(map.get(arr[i]) + " ");
}
}
}
```
这段程序中,首先使用Scanner类从标准输入读取n和n个整数,并将它们存储在一个数组arr中。接着使用HashMap统计每个数字出现的次数,对于每个数字x,如果它还没有出现过,则将其加入到HashMap中并初始化为1;否则,更新其出现次数。
最后,遍历原始数组arr,按顺序输出每个数字出现的次数。需要注意的是,由于HashMap中的键值对是无序的,因此输出顺序可能与原始数组不同。
```java
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int[] arr = new int[n];
// 读入n个整数
for (int i = 0; i < n; ++i) {
arr[i] = scanner.nextInt();
}
// 使用HashMap统计每个数字出现的次数
Map<Integer, Integer> map = new HashMap<>();
for (int x : arr) {
if (!map.containsKey(x)) {
map.put(x, 1);
} else {
map.put(x, map.get(x) + 1);
}
}
// 输出每个数字出现的次数
for (int i = 0; i < n; ++i) {
System.out.print(map.get(arr[i]) + " ");
}
}
}
```
这段程序中,首先使用Scanner类从标准输入读取n和n个整数,并将它们存储在一个数组arr中。接着使用HashMap统计每个数字出现的次数,对于每个数字x,如果它还没有出现过,则将其加入到HashMap中并初始化为1;否则,更新其出现次数。
最后,遍历原始数组arr,按顺序输出每个数字出现的次数。需要注意的是,由于HashMap中的键值对是无序的,因此输出顺序可能与原始数组不同。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询