題意
假設把某股票的價格按照時間先後順序存儲在數組中,請問買賣 一次 該股票可能獲得的利潤是多少?
例如一隻股票在某些時間節點的價格爲[9, 11, 8, 5, 7, 12, 16, 14]。
如果我們能在價格爲5的時候買入並在價格爲16時賣出,則能收穫最大的利潤11。
樣例
輸入:[9, 11, 8, 5, 7, 12, 16, 14]
輸出:11
思路 枚舉出每次在什麼時候進行股票的賣出
class Solution {
public:
int maxDiff(vector<int>& nums) {
if(nums.empty()) return 0;
int minval=nums[0];
int res=0;
for(int i=1;i<nums.size();i++)
{
if(nums[i]>minval)
{
res=max(res,nums[i]-minval);
}
minval=min(minval,nums[i]);
}
return res;
}
};