lintcode---買賣股票的最佳時機II
阿新 • • 發佈:2018-12-24
題目描述:
假設有一個數組,它的第i個元素是一個給定的股票在第i天的價格。設計一個演算法來找到最大的利潤。你可以完成儘可能多的交易(多次買賣股票)。然而,你不能同時參與多個交易(你必須在再次購買前出售股票)。
樣例:
給出一個數組樣例[2,1,2,0,1], 返回 2
思路講解:
由於不限制買賣的次數,我們只要有利潤就進行交易,這樣就能使得我們的利潤最大化。
程式碼詳解:
class Solution {
public:
/*
* @param prices: Given an integer array
* @return: Maximum profit
*/
int max=0;
int maxProfit(vector<int> &prices) {
// write your code here
int i, d;
int max = 0;
for(i = 1; i < prices.size(); ++i){//只要有錢賺就買賣
d = prices[i] - prices[i - 1];
if(d > 0){
max += d;
}
}
return max;
}
};