122.Best Time to Buy and Sell Stock II---dp

题目连接:https://leetcode.com/problems/best-time-to-buy-and-sell-stock-ii/description/ide

题目大意:基本定义与121相似,不一样点:121买卖股票只能有一次,且在这全部的一次买卖中找出最大利润值;122买卖股票不限次数,要求在这全部次数中的最大利润值(这里题目描述不许确,其实不是求某一次买卖获得的最大利润值,而是求全部次买卖所得到的总利润值)。spa

题解(借鉴):这里不用利用121的贪心思想,直接计算每一天中,只要比前一天贵,就卖出当前股票获取利润。(可是我以为这里题目漏洞太大了,也就是说1,2,3这组数据,获得的最大值是2,由(2-1)+(3-2)获得)。代码以下(耗时1ms):code

1     public int maxProfit(int[] prices) {
2         int profit = 0;
3         for(int i = 1;i < prices.length; i++) {
4             if(prices[i] > prices[i - 1]) {
5                 profit += prices[i] - prices[i - 1];
6             }
7         }
8         return profit;
9     }
View Code
相关文章
相关标签/搜索