最大差值

题目描述
有一个长为n的数组A,求满足0≤a≤b

class LongestDistance {
public:
    int getDis(vector<int> A, int n) {
        // write code here
       int size = A.size();
        int max = 0;
       if(size == 0 || size != n)
           return 0;
        for(int i = 0;i < n;++i)
        {
            for(int j = i+1;j < n;++j)
            {
                int temp = A[j] - A[i];
                if(temp > max)
                    max = temp;
            }
        }
        return max;
    }
};
class LongestDistance {
public:
    int getDis(vector<int> A, int n) {
        // write code here
       int size = A.size();
        int max = 0;
       if(size == 0 || size != n)
           return 0;

        int min = A[0];
        for(int i = 0; i<n;i++)
        {
            if(A[i]<min)min=A[i];
            if(A[i]-min>max)max=A[i]-min;

        }
            return max;
        }
};
class LongestDistance {
public:
    int getDis(vector<int> A, int n) {
        // write code here
        int first = -1;
        int second = 0;
        for(int i=0;i<n;i++){
            first = max(first,-A[i]);
            second = max(second,first+A[i]);
        }
        return second;
    }
};
//相当于股票一次买入
阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/coolwriter/article/details/79975775
个人分类: 校招编程题
上一篇寻找Coder
下一篇[LeetCode] Best Time to Buy and Sell Stock 买卖股票的最佳时间
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭