题解 | #买卖股票的最好时机(一)#

买卖股票的最好时机(一)

http://www.nowcoder.com/practice/64b4262d4e6d4f6181cd45446a5821ec

class Solution:
    def maxProfit(self , prices: List[int]) -> int:
        if len == 0:
            return 0
        dp = [[0,0] for _ in range(len(prices))]
        dp[0][0] = prices[0] #表示第i天买入股票情况下消费的现金
        dp[0][1] = 0  #表示第i天不持有股票情况下持有的现金
        for i in range(1, len(prices)):
            dp[i][0] = min(dp[i-1][0], prices[i]) #尽量低价买入,所以取“今天之前持有股票的消费”和“第i天买入股票的消费”的min
            dp[i][1] = max(dp[i-1][1], prices[i] - dp[i-1][0]) #尽量高价卖出,当天价格减去入手时价格,之前与第i天的max
        return dp[-1][1]
        # write code here
全部评论

相关推荐

01-02 21:17
已编辑
西安理工大学 后端
程序员小白条:项目不太重要,你的优势的算法竞赛,然后多背相关的八股文,项目可以不作为重点考虑,面试可能就简单带过项目就行了,你可以直接写简历,背项目相关的八股文就行,也不用自己做,时间紧张的情况下,性价比最高
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务