//时间O(n) 空间O(1)
package com.java.ly2011.October;
public class findMaxItoJ {
public static void main(String[] args) {
int[] a = new int[]{3,5,1,2,4};
int result = findMax(a);
System.out.println(result);
}
public static int findMax(int[] a){
int max = Integer.MIN_VALUE;
int minRight = a[a.length-1];//a[i]右边元素的最小值
int tempMax;
for(int i = a.length-2;i>=0;i--){
tempMax = a[i]-minRight;//a[i]开头的a[i]-a[j]的最大值
if(a[i]<minRight)
minRight = a[i];//更新minRight
if(tempMax>max)
max = tempMax;//更新全局的max
}
return max;
}
}