// TC - O(n) || SC - O(1)
class Solution {
public:
int maxProfit(vector<int>& prices) {
int n = prices.size() - 1, ans = 0, minSoFar = INT_MAX;
for(int i = 0; i < n; ++i) {
minSoFar = min(minSoFar, prices[i]);
ans = max(ans, (prices[i] - minSoFar));
}
return ans;
}
};
// we can use auxilary array and store maxSoFar value
Preview:
downloadDownload PNG
downloadDownload JPEG
downloadDownload SVG
Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!
Click to optimize width for Twitter