
思路
题目的意思就是求序列中正向遍历的最大差值。看列表长度的量级,想要暴力双层遍历求差,复杂度$O(n^2)$肯定会超时。
想要求第$i$天时的最大利润,实际上就是求前$i-$天的最小值,再与第$i$天当天的值相减,遍历过程中取差值最大值即可。
也就是维护两个值:
price[0]
到price[i-1]
的最小值(用minp
表示)price[i]-minp
的最大值(用ans
表示)
题解
class Solution:
def maxProfit(self, prices: List[int]) -> int:
minp = inf
ans= 0
for idx, num in enumerate(prices):
minp = min(minp,num)
ans = max(ans, num-minp)
return ans
《西兰姑娘》剧情片高清在线免费观看:https://www.jgz518.com/xingkong/108719.html
《潜伏5:红门》恐怖片高清在线免费观看:https://www.jgz518.com/xingkong/36204.html
《西兰姑娘》剧情片高清在线免费观看:https://www.jgz518.com/xingkong/108719.html
《十角馆杀人事件》日本剧高清在线免费观看:https://www.jgz518.com/xingkong/9685.html
《十角馆杀人事件》日本剧高清在线免费观看:https://www.jgz518.com/xingkong/9685.html
兄弟写的非常好 https://www.cscnn.com/
博主真是太厉害了!!!