1、暴力
class Solution { public int maxProfit(int[] prices) { // params check if (prices == null) { return 0; } int len = prices.length; int maxPrft = 0; for (int i = 0; i < len; i++) { for (int j = i + 1; j < len; j++) { if (prices[j] > prices[i]) { maxPrft = (prices[j] - prices[i] > maxPrft) ? prices[j] - prices[i] : maxPrft; } } } return maxPrft; } }
2、一次遍历
public class Solution { public int maxProfit(int prices[]) { int minprice = Integer.MAX_VALUE; int maxprofit = 0; for (int i = 0; i < prices.length; i++) { if (prices[i] < minprice) { minprice = prices[i]; } else if (prices[i] - minprice > maxprofit) { maxprofit = prices[i] - minprice; } } return maxprofit; } }