Tag
Array\Greedy
Difficulty
Easy
Description
Say you have an array for which the ith element is the price of a given stock on day i.
Design an algorithm to find the maximum profit. You may complete as many transactions as you like (ie, buy one and sell one share of the stock multiple times). However, you may not engage in multiple transactions at the same time (ie, you must sell the stock before you buy again).
股票可以多次买入卖出
Code
所以可以从头到尾扫描prices,如果price[i] – price[i-1]大于零则计入最后的收益中。即贪心法
import sys
MAX_=sys.maxint
class Solution(object):
def maxProfit(self, prices):
if not len(prices):
return 0
sum=0
prices.insert(0,MAX_)
for i in range(1,len(prices)):
diff=prices[i]-prices[i-1]
if diff>=0:
sum=sum+diff
return sum