闽公网安备 35020302035485号
随后,在第 4 天(股票价格 = 3)的时候买入,在第 5 天(股票价格 = 6)的时候卖出, 这笔交易所能获得利润 = 6-3 = 3 。
1 > 7 ? 不成立,利润 0 5 > 1 ? 已成立,利润 4 3 > 5 ? 不成立,利润 0 6 > 3 ? 已成立,利润 3 4 > 6 ? 不成立,利润 0最后把所有例如相加,即是最大利润,但是其操作的过程并不是最优解,而且实际上过程中也没法这么操作,以为这些操作过程中并没有把亏损算进去。这种算法虽然结果是正确的,但是过程却很奇妙,代码逻辑也不复杂。
func maxProfit(prices []int) int {
maxProfit := 0
for i := 1; i < len(prices); i++ {
if prices[i] > prices[i-1] {
maxProfit += prices[i] - prices[i-1]
}
}
return maxProfit
}