最大差值

题目描述

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

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

测试样例:

[10,5],2

返回:0

分析:
注意理解题目意思,只能是一个范围内,后面的减前面的最大差值,如上例中可能出现的差值是-5(5-10)或0(5-5或10-10)。所以返回最大差值0。
class LongestDistance {
public:
    int getDis(vector<int> A, int n) {
        // write code here
        int min=A[0];   //初始化数组中的最小数字
        int diff=0;     //初始化最大差值
        for(int i=1;i<n;i++) //遍历数组
          {
             if(A[i]-min>diff)  //更新最大差值
                 diff=A[i]-min;
             if(A[i]<min)       //更新最小值
                 min=A[i];
          }
        return diff;
    }
};



版权声明:本文为sinat_33718563原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。