Print

Java 最多重复元素

问:java 返回数组连续重复元素的最大次数
  1. 答:你程序的逻辑是前后相等就加1,所以在在上面的1,1计数了1次,在中间4个3就是3次,加上最后的三个3是2次,结果当然就是6了。要改的话,前面的判断没啥必要可以去掉,改成
    public static int maxNumRepeated(int[] a, int elem)
    {
        int cont = 0;
        int maxNum = 0;
        for (int i = 0; i < a.length; i++)
        {
            if (a[i] == elem)
            {
                cont++;
                if (cont > maxNum) maxNum = cont;
            }
            else cont = 0;
        }
        return maxNum;
    }
  2. 答:使用里面的案例,测试过的。
    ~~~~~~~~~~~~~~~~~~~~~~~~~
问:java集合里如何判断中出现最多的元素
  1. 答:将此集合中所以的元素,放入一个Map中,统计一下:
    比如所有的元素为String类型,存放于list中,
    Map<String,Integer> map=new HashMap<String,Integer>();
    for(String s:list)
    {
    if(map.containsKey(s))
    {
    int qty=map.get(s);
    map.put(s,qty+1);
    }
    else
    {
    map.put(s,1);
    }
    }
    到这儿,再统计一下map中的最大值就可以了。
问:一个数组中有N个元素,找出其中重复次数最多的那个元素? JAVA LIST 集合
  1. 答:我是这样想的:你可以设置一个计数的int变量,依次检查数组中的数没遇到相等的就++;然后和前一个比较完的计数值比较,大于保留,小于舍去,最后需要的是计数值最大所对应的那个值。

本文来源: https://www.lw00.cn/article/39be58f9c56b731a02431d47.html