JAVA统计出从1到1000每个数字出现的次数。

 我来答
hejun0881
2012-04-24 · 超过16用户采纳过TA的回答
知道答主
回答量:96
采纳率:0%
帮助的人:33万
展开全部
import java.util.Arrays;
import java.util.*;
import java.lang.Integer;

public class BinarySearchTest {

public static void disply(int[] a) {//输出函数,实现一系列功能并输出结果,
List<Integer> arrlist = new ArrayList<Integer>();
List<Integer> arrlist2 = new ArrayList<Integer>();//生成ArrayList的实例,该实例实现了接口List;
int frequnce = 1;//定义变量,用于记录某个数出现的次数;
int valu = 0;//
int max=0;//某个数出现的最大次数;
int numb = 0;//出现次数最多的数的索引值;
for (int i = 0; i < a.length - 1; i++) {//该循环找出每个数出现的次数,并将次数记录在arrlist里,将相对应
valu = a[i]; //的数存在arrlist2里面;
if (valu != a[i + 1]) {
arrlist.add(frequnce);
frequnce = 1;
arrlist2.add(a[i]);
}
if (valu == a[i + 1]) {
frequnce++;

}
}
System.out.println(arrlist2);//打印出arrlist便于判断程序功能是否正确;

Integer[] arry = new Integer[arrlist.size()];
Integer[] brry = new Integer[arrlist2.size()];//定义包装类对象数组;
arrlist.toArray(arry);
arrlist2.toArray(brry); //将arrlist2转换为包装类数组;
for (int i = 0; i < arry.length; i++) {
if (max < arry[i].intValue()) {
max = arry[i].intValue();//找出arry中的最大值,即最大出现次数;
}
System.out.println("元素" + brry[i] + "出现" + arry[i] + "次");//打印每个数出现的次数;
}
for(int i=0;i<arry.length;i++){//找出出现次数对多的数在arry中的索引;
if(max==arry[i])
numb=i;
}
System.out.println("出现次数最多的是" + brry[numb] + "共出现:" + max + "次");//输出出现次数对多的数和次数
for(int i=0;i<brry.length;i++){
System.out.print(brry[i]+" ");//输出brry数组便于判断程序功能是否正确;
}
System.out.println();
for(int i=0;i<a.length;i++){//输出arry数组便于判断程序功能是否正确;
System.out.print(arry[i]+" ");
}
}

public static void main(String args[]) {

int[] array2=new int[]{1,1,1,2,3,3,6,6,7,8,9,9,9,9,10,13,15,15,15,17,19,19,19,19,19,20,20,20,20,20,20};
disply(array2);
}
}
以下是输出结果,没有对元素20统计,帮帮忙给位大虾
出现过的元素[1, 2, 3, 6, 7, 8, 9, 10, 13, 15, 17, 19]
元素1出现3次
元素2出现1次
元素3出现2次
元素6出现2次
元素7出现1次
元素8出现1次
元素9出现4次
元素10出现1次
元素13出现1次
元素15出现3次
元素17出现1次
元素19出现5次
出现次数最多的是19共出现:5次
1 2 3 6 7 8 9 10 13 15 17 19
3 1 2 2 1 1 4 1 1 3 1 5
1 1 1 2 3 3 6 6 7 8 9 9 9 9 10 13 15 15 15 17 19 19 19 19 19 20 20 20 20 20 20
骑仕猎人
推荐于2018-05-01 · TA获得超过343个赞
知道小有建树答主
回答量:386
采纳率:100%
帮助的人:208万
展开全部
public class ElementCount {
public static void main(String[] args) {
for(int j=0;j<=9;j++){
int sum=0;
for(int i=1;i<=1000;i++){
sum+=jcount(j,i+"");
}
System.out.println(j+"出现的次数:"+sum);
}
}

private static int jcount(int a,String str) {
int count = 0;
for(int i=0;i<str.length();i++){
int b = Integer.parseInt(""+str.charAt(i));
if(a == b){
count++;
}
}
return count;
}
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式