当前位置: 首页 > 知识库问答 >
问题:

Java-在排序数组中查找最不常见的整数

柳羽
2023-03-14
package leastfrequent;
import java.util.*;

public class LeastFrequent
{
    private static int[] arr = new int[10];
    private static int minValue;
    private static int minCount;

    public static void leastCommon()
    {
        for(int i = 0; i < arr.length; i++)
        {
            int count = 0;

            for(int j = 0; j < arr.length; j++)
            {
                if(arr[j] == arr[i]) 
                {
                    count++;
                }
            }

            if(count > minCount)
            {
                minCount = count;
                minValue = arr[i];
            }
        }
    }

    public static void main(String[] args)
    {
        Scanner stdin = new Scanner(System.in);
        System.out.print("numbers: ");

        for(int i = 0; i < arr.length; i++)
        {
            arr[i] = stdin.nextInt();
        }

        Arrays.sort(arr);
        leastCommon();

        System.out.println("least frequent: " + minValue + " occurs " + minCount + " times");
    }
}

请帮忙!!

共有1个答案

尉迟鸿熙
2023-03-14

两个变化:

>

  • mincount初始化为:

    private static int minCount = 10;
    

    如果改为与小于进行比较,而将大于改为:

    if(count < minCount){
    

  •  类似资料:
    • 我试图找到给定排序数组的最大K数。 ex:输入- 到目前为止,我编写的代码返回最大的K元素,但它需要返回最大的K数字。任何帮助都将不胜感激。

    • 经典的问题陈述是:给定一个未排序的整数数组,找到中不存在的最小正整数。 在一个经典的问题陈述中,你只得到一个数组,你可以在这里、这里和这里找到很多关于这个问题的解决方案和资源。 在我的问题中,你得到了两个数组,和,长度均为。构造一个长度为 的数组 ,其“最小缺失整数”是可能的最大值。 必须是 或 。 我们如何以< code>O(N)的最坏情况时间和空间复杂度解决这个问题? 假设:

    • 问题内容: 我有一个具有以下结构的行表,其中每一行都有每个人喜欢的颜色和该人所属组的列表。我如何返回每个组中最常见的颜色的列表? 您可以组合设置重叠,获取交点然后进行其他计数和排名吗? 问题答案: 快速而肮脏: 一个更好 [`LATERAL JOIN`](http://www.postgresql.org/docs/current/interactive/sql-select.html) 在Pos

    • 问题内容: 改写: 在我的项目中,我有图像。每个图像有5个标签,范围为[1,10]。我用Elasticsearch上传了这些标签: 我将这些文件加载​​到类型为“ img”的索引“ my_project”中的elasticsearch中: 我上传的其他示例文件: 在我的应用程序中,向量要长得多,但是具有固定数量的唯一元素。我喜欢这些文件中的20M。 现在,我想找到给定向量的相似文档。向量具有更多公

    • 问题内容: 我将如何查找数组中三个最常见的元素?我正在使用长度为10,000的数组,元素为0-100之间的随机整数。 我正在考虑使用两个数组,其中一个长度为100,并且仅通过使用if语句来递增。但是,我想知道是否有一种方法只能使用一个for / if loop(statement)来查找这些值。 问题答案: 如果要通过列表中的固定次数进行此操作,则需要第二个数据结构。 如果该集合中的值有上限和下限

    • 求一个未排序数组的中值,我们可以对n个元素做O(nlogn)时间的min-heap,然后我们可以逐个抽取n/2个元素得到中值。但是这种方法需要O(nlogn)时间。 我们能在O(n)时间内通过某种方法做同样的事情吗?如果可以,那么请告诉或建议一些方法。