股票的最大价值

将一系列价格放入一个列表中,求这些价格的最大利润。例如 [9, 11, 8, 5, 7, 12, 16, 14],则价格差异最大是 11,在 5 和 16 中将产生。
思路:
在扫描到数组中的第 i 个数字时,只要我们能够记住之前的 i-1 个数字中的最小值,就能算出在当前价位卖出时可能得到的最大利润。

def maxProfit(prices):
        """
        :type prices: List[int]
        :rtype: int
        """
        length = len(prices)
        if length < 2:
            return 0
        min = prices[0]
        maxdiff = prices[1] - min
        for i in range(2,length):
            if prices[i-1] < min:
                min = prices[i-1]
            curdiff = prices[i] - min
            maxdiff = max(maxdiff, curdiff)
        if maxdiff <= 0:
            return 0
        return maxdiff
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容