要点是卖的日子要在买的日子的前面,每一次遍历都要记录当前找到的最小值,然后用当前股票价格减去最小值看看利润是否最大。
class Solution {
public int maxProfit(int[] prices) {
int maxProfit = 0;
int minPrice = Integer.MAX_VALUE;
for(int x : prices) {
minPrice = Math.min(x, minPrice);
if(x - minPrice > maxProfit) {
maxProfit = x - minPrice;
}
}
return maxProfit;
}
}