LeetCode--Best Time to Buy and Sell Stock(最大利潤)Python
阿新 • • 發佈:2019-02-07
題目:
給定一個數組,第i個位置表示第i天的價格,要求只能完成一組交易(買入一次+賣出一次),求出最大利潤。
解題思路:
對陣列進行遍歷,儲存當前的最小買入價格和當前的最大利潤,遍歷結束後,返回最終的最大利潤即可。
程式碼(python):
class Solution(object): def maxProfit(self, prices): """ :type prices: List[int] :rtype: int """ n = len(prices) if n==0 or n==1: return 0 min0 = prices[0] max0 = 0 for i in range(n): if prices[i]<min0: min0 = prices[i] continue if prices[i]>=min0: if prices[i]-min0>max0: max0 = prices[i]-min0 continue else: continue return max0