当前位置: 首页 > 面试题库 >

返回值数组中的两个最大整数

谈渊
2023-03-14
问题内容

我试图从我的int数组返回两个最大的整数。我能够返回最大和最小的罚款,但无法获得返回两个最大罚款的算法。任何帮助在这里都将不胜感激。

请原谅我的代码中的任何错误。这是一次练习,问题取自去年大学的考试材料。

这是我的代码:

public class TwoLargestIntsArray {

public static void main(String [] args){

    int [] values = new int[5];

    values[0] = 5;
    values[1] = 10;
    values[2] = 15;
    values[3] = 20;
    values[4] = 25;

    System.out.println(twoLargest(values));
    System.out.println();

}

public static int twoLargest(int values[]){

    int largestA = values[0];
    int largestB = values[0];

    for(int i = 0; i < values.length; i++){

            if(values[i] > largestA){
                largestA = values[i];
            }
            if(values[i] < largestA){
                largestB = values[i];   
            }

    }
    return largestA + largestB; 
}

}

问题答案:

你可以写

public static int[] twoLargest(int values[]){
    int largestA = Integer.MIN_VALUE, largestB = Integer.MIN_VALUE;

    for(int value : values) {
        if(value > largestA) {
            largestB = largestA;
            largestA = value;
        } else if (value > largestB) {
            largestB = value;
        }
    }
    return new int[] { largestA, largestB }; 
}


 类似资料:
  • 问题内容: 从如下所示的数组中,如何获取数组中最大值的索引。对于下面的数组,期望的结果将为‘11’。 问题答案: 我的解决方案是: 注意: 这样,您可以检索与给定 最大值 相关的 每个键 。 __ 如果您只对 其中一个键 感兴趣,只需使用 $ maxs [0]

  • 所以,我想插入一个数组,然后按最大到最小的顺序返回3个数,每两个数之间的差值相同。 下面的代码是我的尝试。我为循环做了3个

  • 本文向大家介绍返回JavaScript中数组的最小值和最大值的函数,包括了返回JavaScript中数组的最小值和最大值的函数的使用技巧和注意事项,需要的朋友参考一下 问题 我们需要编写一个接受一个数组并返回另一个数组的JavaScript函数,该数组的第一个元素应该是输入数组的最小元素,第二个应该是输入数组的最大元素。 示例 以下是代码- 输出结果

  • 从提供的数组中返回 n 个最大元素。如果 n 大于或等于提供的数组长度,则返回原数组(按降序排列)。 结合使用Array.sort() 与展开操作符(...) ,创建一个数组的浅克隆,并按降序排列。 使用 Array.slice() 以获得指定的元素个数。 忽略第二个参数 n ,默认获取单个元素(以数组的形式)。 const maxN = (arr, n = 1) => [...arr].sort

  • 我有以下问题 写一个函数: 给定一个包含N个整数的数组A,返回A中没有出现的最小正整数(大于0)。 例如,给定 A = [1, 3, 6, 4, 1, 2],函数应返回 5。 给定A = [1,2,3],函数应该返回4。 给定A =[1,3],该函数应返回1。 为以下假设编写有效的算法: N是[1..100000]范围内的整数 数组A的每个元素都是范围内的整数[−1000000..1000000]