121. 买卖股票的最佳时机

121. 买卖股票的最佳时机


题目链接:121. 买卖股票的最佳时机

代码如下:

//暴力法超时
// class Solution {
// public:
//     int maxProfit(vector& prices) {
//         int profit=0;

//         int left=0;

//         for(int i=0;i
//         {
//             for(int j=i+1;j
//             {
//                 int tempProfit=prices[j]-prices[i];
//                 if(profit
//                     profit=tempProfit;
//             }
//         }

//         return profit>0?profit:0;
//     }
// };

class Solution {
public:
    int maxProfit(vector<int>& prices) {
        int profit=0;

        int left=0;

        for(int right=1;right<prices.size();right++)
        {
            int tempProfit=prices[right]-prices[left];

            //当前股价减left指向的股价小于零时,说明当前这个股价更小,进行替换
            if(tempProfit<0)
                left=right;

            if(tempProfit>profit)
                profit=tempProfit;
        }

        return profit>0?profit:0;
    }
};

你可能感兴趣的:(leetcode,c++)