思路:
贪心、动态规划算法都可以,这里只记录一下贪心思想,更简单一点
对于这种类型,画图是最直观的、最方便理解的,示例1的图如下所示:
折线图中,选取上涨区间的股票买卖即可。贪心思想就是只要相邻两天有的赚,我就买卖。示例 2可以看成是(2-1)+(3-2)+(4-3)+(5-4)。
class Solution {
public:
int maxProfit(vector<int>& prices) {
// int n = prices.size();
// int res = 0;
// for(int i = 0; i < n - 1; i++)
// {
// if(prices[i] < prices[i+1])
// res += prices[i+1] - prices[i];
// }
int res = 0;
vector<int>::iterator it;
for( it = prices.begin(); it != prices.end() - 1; it++)
{
if( *it < *(it+1))
res += *(it+1) - *it;
}
return res;
}
};