求最大差值

给定一个数组arr,length(arr)>2,任取两个数arr[i]和arr[j], 其中:i<j,求max(arr[i]-arr[j]) 
要求:时间复杂度为O(n)
输入、输出描述
输入:
arr: 长度至少为2的整数数组
n: 数组长度
输出:
max(a[i]-a[j]) ,其中i
                        
Example
输入:
arr: [1,3,7,2,5]
n: 5
输出:
5
代码:
import java.util.*;

public class Main {

  public int solution(int[] arr, int n){
    if(n<=1){
    	return 0;
    }
	int max = 0x80000000;
	for(int i=0;i<n-1;i++){
		for(int j=i+1;j<n;j++){
			if(arr[i] - arr[j] > max){
				max = arr[i] - arr[j];
			}
		}
	}
	return max;
  }
}
一个创业中的苦逼程序员
评论专区

隐藏