當給出4個數時,我如何找到4個數中的哪3個數會給出最大的總和。 所以,如果給3 2 5 5,我想java總結3 5 5總共13讓java給出4個數中最高的3個數
我一直在尋找約20分鐘,我發現的是我如何找到4個數字的最高數字。我知道我完全可以寫16行代碼,比較16種不同的組合,但我希望有人能指出我的速度更快。
當給出4個數時,我如何找到4個數中的哪3個數會給出最大的總和。 所以,如果給3 2 5 5,我想java總結3 5 5總共13讓java給出4個數中最高的3個數
我一直在尋找約20分鐘,我發現的是我如何找到4個數字的最高數字。我知道我完全可以寫16行代碼,比較16種不同的組合,但我希望有人能指出我的速度更快。
首先找到最小的數字。
因此,對於3 2 5 5這將是2.確保你存儲這個。
因此,號碼之和3,5和5
要得到你需要的所有的數字加在一起,所以總金額:
3 + 2 + 5 + 5 = 15
然後從總和中減去最小的數字。所以15-2等於13
這正是我正在尋找的。我剛剛學會了如果語句,所以我仍然是相當新的Java和這個算法只是激發我知道如何得到我需要的結果.. –
@TylerR很高興我可以幫助 –
首先找出四個數字中最大的一個,並將其放在一邊。
然後找到其餘三個數字中最大的一個,並將其放在一邊。
然後找到其餘兩個數字中最大的一個,並將其放在一邊。
然後總結留下的數字並顯示結果。
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;
}
不只是勺子餵食讓他學習。 – Blip
你到目前爲止嘗試過什麼? – Blip
我們會在您的評估提交中得到確認嗎? – Hassan
請注意,請添加您到目前爲止嘗試過的代碼,指定它的輸出結果,這樣也許有人可以提供幫助。 – Hassan