区间DP——股票问题系列

简介: 区间DP——股票问题系列

image.png

算法思想:通过分析最大利润等于,max{a[i]-min{a[j]}} (j<i)

遍历数组,同时记录最小值min,每次与min作差,最大差则为最大利润。

class Solution {
public:
    int maxProfit(vector<int>& prices) {
        if(prices.empty()){
            return 0;
        }
        int maxPro=0;
        int min=prices[0];
        for(int i=1;i<prices.size();i++){
            if(prices[i]<min){
                min=prices[i];
            }
            maxPro=max(prices[i]-min,maxPro);
        }
        return maxPro;       
    }
};

image.png

20201212164857601.png

class Solution {
public:
    int maxProfit(vector<int>& prices) {
        int temp=0;
        int profit=0;
        for (int i = 1; i < prices.size(); i++) {
            int tmp = prices[i] - prices[i - 1];
            if (tmp > 0) profit += tmp;
        }
        return profit;
    }
};


相关文章
|
9月前
【动态规划】买卖股票问题
【动态规划】买卖股票问题
104 0
|
算法
【动态规划刷题 8】买卖股票的最佳时机 III && 买卖股票的最佳时机 IV
【动态规划刷题 8】买卖股票的最佳时机 III && 买卖股票的最佳时机 IV
|
9月前
|
算法
算法编程(五):买卖股票的最佳时机
算法编程(五):买卖股票的最佳时机
59 0
|
4月前
|
存储
(剑指Offer)10、菲波那切数列I—10、青蛙跳台阶问题II—63、股票的最大利润(2021/12/04)
(剑指Offer)10、菲波那切数列I—10、青蛙跳台阶问题II—63、股票的最大利润(2021/12/04)
40 0
|
8月前
动态规划——买卖股票的最佳时机含冷冻期
动态规划——买卖股票的最佳时机含冷冻期
46 1
|
8月前
|
算法
leetcode题解:121.买卖股票的最佳时机
leetcode题解:121.买卖股票的最佳时机
54 0
|
9月前
|
算法
【力扣】121. 买卖股票的最佳时机、122.买卖股票的最佳时机Ⅱ
【力扣】121. 买卖股票的最佳时机、122.买卖股票的最佳时机Ⅱ
|
9月前
|
存储 算法 程序员
【算法训练-动态规划 一】【应用DP问题】零钱兑换、爬楼梯、买卖股票的最佳时机I、打家劫舍
【算法训练-动态规划 一】【应用DP问题】零钱兑换、爬楼梯、买卖股票的最佳时机I、打家劫舍
159 0
|
算法
【学会动态规划】买卖股票的最佳时机 III(17)
【学会动态规划】买卖股票的最佳时机 III(17)
44 0
|
算法 Java
dp算法 力扣123 买卖股票的最佳时机 III
dp算法 力扣123 买卖股票的最佳时机 III