121. 买卖股票的最佳时机
public class Solution {public int MaxProfit(int[] prices) {int result=0;int low=int.MaxValue;for(int i=0;i<prices.Length;i++){if(prices[i]<low){low=prices[i];}else{result=Math.Max(result,prices[i]-low);}}return result;}
}
先遍历找到股票价格最低那天,然后一次减去最低值,哪个最大选哪个。
122.买卖股票的最佳时机II
public class Solution {public int MaxProfit(int[] prices) {int ans=0;for(int i=1;i<prices.Length;i++){ans+=Math.Max(prices[i]-prices[i-1],0);}return ans;}
}
收益一定是先买后卖,所以一定是后一天减前一天,如果收益为负就不管,为正就加上,最后算总和。