问题描述
问题分析
- 该题中的股票可以无限次买入卖出,但实际上最大收益是相邻数字的差值的累加和。
- 注意
d - a = d - c + c - a
代码实现
class Solution {
public int maxProfit(int[] prices) {
if (prices == null || prices.length == 0) {
return 0;
}
int maxProfit = 0;
//累加相邻两数的差值
for (int i = 1; i < prices.length; ++i) {
if (prices[i] > prices[i - 1]) {
maxProfit += prices[i] - prices[i - 1];
}
}
return maxProfit;
}
}