static int maxDifference(int[] a) {
int minimum, diff = -1;
if(a.length == 0) {
return -1;
}
minimum = a[0];
for (int i = 1; i < a.length; i++) {
diff = Math.max(diff, a[i] - minimum);
minimum = Math.min(minimum, a[i]);
}
return diff;
雖然我在搜索max-Firstmin代碼找到了這段代碼。請解釋此代碼如何工作輸入int[a]={20,10,65,95,110,200,60,700,5}
它返回700-10而不是700-5.How?如何解決數組中的maximum-Firstminimum?
改變你的兩條語句的順序 –
這是java還是C++? –
你明白max-min中的問題,但它是最大的-First_minimum,仔細閱讀關於問題的陳述 –