有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

Java在数组中重复计数,而不使用外部类或方法?

我需要计算数组中的重复数,但我只能使用数组,不能使用哈希集或数组列表

以下是示例输入及其预期输出:

numDuplicates(new double[] { }) --> 0
numDuplicates(new double[] { 11.0 }) --> 0
numDuplicates(new double[] { 11.0, 11.0, 11.0, 11.0 }) --> 3
numDuplicates(new double[] { 11.0, 11.0, 11.0, 11.0, 22.0, 33.0, 44.0, 44.0, 44.0, 44.0, 44.0, 55.0, 55.0, 66.0, 77.0, 88.0, 88.0 }) --> 9
numDuplicates(new double[] { 11.0, 22.0, 33.0, 44.0, 44.0, 44.0, 44.0, 44.0, 55.0, 55.0, 66.0, 77.0, 88.0 }) --> 5

这是我的代码,但它在每个数字后计算重复数,返回一个膨胀的计数,即{11.0,11.0,11.0}返回6而不是3:

public static int numDuplicates (double[] list) {

    int dupCount = 0;
    for (int i = 0; i < list.length; i++) {
        for (int j = i + 1; j < list.length; j++) {
            if (list[i] == list[j]) {
                dupCount++;
            }
        }
    }

    return dupCount; //TODO1: fix this
}

注意:我是新手,我尝试过彻底搜索,但找不到与我的输入/输出类似的数组重复问题,但如果有人已经问过这个问题,我很抱歉


共 (0) 个答案