题目链接:121. 买卖股票的最佳时机 - 力扣(Leetcode)
分析:这里的数据大小为1e5,所以使用暴力会TLE.
思路:我们发现,需要找到最大利润,其目标就是找到当前第i位后的最大值。换位思考,就是找到当前第i位前的最小值。
代码:
class Solution {
public:
int maxProfit(vector<int>& prices) {
const int INF=1e9+10;
int minn=INF,maxx=0;
for(auto x:prices){
maxx=max(maxx,x-minn);
minn=min(minn,x);
}
return maxx;
}
};