最大差值

来源:互联网 发布:个人定位软件 编辑:程序博客网 时间:2024/05/18 00:49

有一个长为n的数组A,求满足0≤a≤b<n的A[b]-A[a]的最大值。

给定数组A及它的大小n,请返回最大差值。

测试样例:
[10,5],2
返回:0
思路:贪心算法,求出数组中最小值,用数组中所有数减最小值,知道找到最大差值


class LongestDistance {public:    int getDis(vector<int> A, int n) {        if(A.size() <= 1)            return 0;        int min = A[0]; //初始化最小值        int max = A[0] - A[0];  //初始化最大差值        for(int i = 1; i < A.size(); i++){            if(min > A[i]) //如果最小值小于当前数组元素                min = A[i];  //将数组元素赋值给最小值            if(A[i] - min > max)  //求最大差值                max = A[i] - min;        }        return max;    }};








原创粉丝点击