标题:java新手求助!求求了各位大神,孩子的作业真的不会555
只看楼主
yex
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2022-11-8
结帖率:0
已结贴  问题点数:10 回复次数:2 
java新手求助!求求了各位大神,孩子的作业真的不会555
用随机数生成一个数组后,要求打印出具有最多相同数字的一行的索引
应该怎么用循环找啊?想了好几天了。。。
先在这里谢谢各位好心人啦!!!
搜索更多相关主题的帖子: 孩子 索引 一行 java 作业 
2022-11-08 21:16
巴巴鲁
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:3
帖 子:2
专家分:5
注 册:2022-11-13
得分:5 
package question;

import java.util.Random;

public class question {
    public static void main(String[] args) {
        int[] number = new int[10];
        Random r = new Random();
        int count = 0;//统计出现最多数字出现的次数
        int many = 0;//统计出现最多的数字
        for (int i = 0; i < number.length; i++) {
            int temp = r.nextInt(10);
            number[i] = temp;
        }
        for (int i = 0; i < number.length; i++) {
            int count1 = 0;//临时存储当次比较数字出现的次数
            for (int j = 0; j < number.length; j++) {
                if (number[i] == number[j]) {
                    count1++;
                }
                if (count1 >= count) {
                    count=count1;
                    many = number[i];
                }
            }
        }
        System.out.println("输出数量最多值:"+many+"出现做多次数:"+count);
        for (int i = 0; i < number.length; i++) {
            System.out.println(number[i]);
        }
    }
}


这个只能查到一个出现最多次数的数字和次数,有多个就查不到了,有大佬看到能帮忙教下吗
2022-11-13 22:25
deagoal
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:3
帖 子:11
专家分:50
注 册:2022-11-17
得分:5 
把它们全部统计一下就可以了.   
public static void randomstatic() {
        
        int[] number = new int[10];
        Random r = new Random();
        int count = 0;//统计出现最多数字出现的次数
        int many = 0;//统计出现最多的数字
        for (int i = 0; i < number.length; i++) {
            int temp = r.nextInt(10);
            number[i] = temp;
        }
        for (int i = 0; i < number.length; i++) {
            int count1 = 0;//临时存储当次比较数字出现的次数
            for (int j = 0; j < number.length; j++) {
                if (number[i] == number[j]) {
                    count1++;
                }
                if (count1 >= count) {
                    count=count1;
                    many = number[i];
                }
            }
        }
        HashMap<Integer, Integer> map = new HashMap<>();
        Integer val, max = -1 , i;        
        for( i = 0; i < number.length; i++) {
            val = map.get(number[i]);
            if(val!=null) {
                map.put(number[i], ++val);
                if(max < val) max = val;
            }
            else {
                map.put(number[i], 1);
            }
        }
        Set<Integer> set = map.keySet();
        String str = "输出数量最多值: ";
        for(Integer s : set) {
            if(map.get(s) == max) str +=  s + "  ";
        }
        
        System.out.println(map);
        System.out.println(str + "出现次数:: " + max);
        System.out.println("输出数量最多值:"+many+"出现做多次数:"+count);
        for (i = 0; i < number.length; i++) {
            System.out.print(number[i] + " , ");
        }
        System.out.println();
    }
2022-11-17 16:00



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-510588-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016163 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved