AC代码:
- class Solution {
- public:
- int dp[100010];
- int maxProfit(vector<int>& prices)
- {
- //找每个元素左边最小的 就是左右两个数组的单边版本。(正好是官方题解的第二种版本)
- int ans = 0;
- int mintmp = prices[0];
- for(int i = 1; i < prices.size();i++)
- {
- ans = max(ans,prices[i] - mintmp);
- mintmp = min( mintmp,prices[i]);
- }
- return ans;
- }
- };