贪心----1.买卖股票的最佳时机
121. 买卖股票的最佳时机 - 力扣(LeetCode)
/**
买卖股票的最佳时机:先寻找到一个低点,再在低点之后找更高的高点,记录差值,差值最大的即为最大利润
维护变量:
min,初始化为Integer.MAX_VALUE,记录低点; max,记录高点; resMax,记录最大利润
遍历过程:
若股票价格小于当前min,则更新min最低点为当前价格,max置为-1(即遇到新的低点,之前的高点作废,无法在过去的时间卖出)
若股票价格大于当前高点,则更新max最高点为当前价格,并更新resMax记录最大利润
*/
class Solution {/**买卖股票的最佳时机:先寻找到一个低点,再在低点之后找更高的高点,记录差值,差值最大的即为最大利润维护变量:min,初始化为Integer.MAX_VALUE,记录低点; max,记录高点; resMax,记录最大利润遍历过程:若股票价格小于当前min,则更新min最低点为当前价格,max置为-1(即遇到新的低点,之前的高点作废,无法在过去的时间卖出)若股票价格大于当前高点,则更新max最高点为当前价格,并更新resMax记录最大利润*/public int maxProfit(int[] prices) {int min = Integer.MAX_VALUE;int max = 0;int resMax = 0;for(int i = 0; i < prices.length; i++) {if(prices[i] < min) {min = prices[i];max = -1;} else if(prices[i] > max) {max = prices[i];resMax = Math.max(resMax,max - min);}}return resMax;}
}