Say you have an array for which the ith element is the price of a given stock on day i.
If you were only permitted to complete at most one transaction (ie, buy one and sell one share of the stock), design an algorithm to find the maximum profit.
class Solution:
# @param prices, a list of integer
# @return an integer
def maxProfit(self, prices):
if len(prices)<2: #如果数组没值或者只有一个值,不赚钱
return 0
profit=0
minprice=prices[0]#设第一个值是最低价钱
for i in prices[1:]:#从第二个开始到最后
if (i-minprice)>profit:#如果当前值减去最低值比当前利润大,那么记录这个利润
profit=i-minprice
if i<minprice:#如果当前值比最低值小,记录这个最低值
minprice=i
return profit