股票的最大利润
题目形容
能够有一次买入和一次卖出,买入必须在前。求最大收益。
- 例子:题目形容 [7, 1, 5, 3, 6, 4]
- 最大利润为 6 – 1 = 5
题目链接 : [股票的最大利润]()
代码
/**
* 题目:股票的最大利润
* 能够有一次买入和一次卖出,买入必须在前。求最大收益。* 例子:题目形容 [7, 1, 5, 3, 6, 4]
* 最大利润为 6 - 1 = 5
*/
public class Jz75 {
/**
* 应用贪婪策略,假如第 i 轮进行卖出操作,买入操作价格应该在 i 之前并且价格最低。*/
public int maxProfit(int[] prices) {if (prices == null || prices.length == 0) {return 0;}
int soFarMin = prices[0];
int maxProfit = 0;
for (int i = 1; i < prices.length; i++) {soFarMin = Math.min(soFarMin, prices[i]);
maxProfit = Math.max(maxProfit, prices[i] - soFarMin);
}
return maxProfit;
}
public static void main(String[] args) {}}
【每日寄语】融四岁,能让梨;弟于长,宜先知。