使 java 给出给定的 4 个数字中 3 个数字中最大的总和

Make java give the the highest sum of 3 numbers out of 4 given

当给定 4 个数字时,我如何找出 4 个数字中哪 3 个数字的总和最大。 因此,如果给定 3 2 5 5,我希望 java 对 3 5 5 求和,总共 13

我已经搜索了大约 20 分钟,我发现的只是如何找到 4 个数字中的最大数字。我知道我绝对可以只写 16 行代码来比较 16 种不同的组合,但我希望有人能指出我更快的方向。

先找出四个数中最大的一个,放在一边。

然后找出剩余三个数中最大的一个,放在一边。

然后找出剩余两个数中最大的一个,放在一边。

然后将放在一边的数字相加并显示结果。

public static void main(String args[]) {
    int[] vals = new int[4];
    vals[0] = 3;
    vals[1] = 2;
    vals[2] = 5;
    vals[3] = 5;
    int result = sum4(vals);
    System.out.println("Sum of x+y = " + result);
}

private static int sum4(int[] nums)
{
    int retVal = 0;
    int lowest =  Integer.MAX_VALUE;
    for (int i=0; i<nums.length; i++)
    {
        if (nums[i] < lowest)
            lowest = nums[i];
        retVal += nums[i];
    }
    retVal -= lowest;
    return retVal;
}

先找出最小的数。

因此对于 3 2 5 5 它将是 2。请务必存储它。

因此,求和的数字是 3、5 和 5

要获得总和,您需要将所有数字相加,因此:

3 + 2 + 5 + 5 = 15

然后从总和中减去最小的数。所以 15-2 等于 13