原题
https://leetcode.cn/problems/best-time-to-buy-and-sell-stock-ii/description/
思路
动态规划
复杂度
时间:O(n)
空间:O(n)
Python代码
class Solution:
def maxProfit(self, prices: List[int]) -> int:
ans = 0
min_so_far = prices[0]
for i in range(1, len(prices)):
if prices[i] > min_so_far:
# 卖出
ans += prices[i] - min_so_far
# 更新当前最小价格
min_so_far = prices[i]
else:
min_so_far = prices[i]
return ans
Go代码
func maxProfit(prices []int) int {
ans := 0
min_so_far := prices[0]
for i := 1; i < len(prices); i++ {
if prices[i] > min_so_far {
// 卖出
ans += prices[i] - min_so_far
// 更新当前最小价格
min_so_far = prices[i]
} else {
min_so_far = prices[i]
}
}
return ans
}
339

被折叠的 条评论
为什么被折叠?



