力扣121. 买卖股票的最佳时机

Problem: 121. 买卖股票的最佳时机

题目描述

在这里插入图片描述在这里插入图片描述

思路

1.定义一个int数组max大小同prices;定义int变量curMax初始化为0;
2.从后往前遍历数组,若当前元素prices[i] > curMax时,则使将其赋值给curMax再将curMax填写到max[i];
3.定义int变量result再从前往后遍历,若price[i] - max[i] > result,则更新result,最后返回result。

复杂度

时间复杂度:

O ( n ) O(n) O(n);其中 n n n为数组prices的大小;

空间复杂度:

O ( n ) O(n) O(n)

Code

class Solution {
public:
    /**
     * Suffix sum
     * @param prices
     * @return int
     */
    int maxProfit(vector<int> &prices) {
        int n = prices.size();
        vector<int> max(n);
        int curMax = 0;
        //Statistical suffix sum
        for (int i = n - 1; i >= 0; --i) {
            max[i] = curMax;
            if (prices[i] > curMax) {
                curMax = prices[i];
            }
        }
        int result = 0;
        for (int i = 0; i < n; ++i) {
            if (max[i] - prices[i] > result) {
                result = max[i] - prices[i];
            }
        }
        return result;
    }
};

相关推荐

  1. 121. 买卖股票最佳时机

    2024-04-10 06:36:06       21 阅读
  2. 122. 买卖股票最佳时机 II

    2024-04-10 06:36:06       36 阅读
  3. 122. 买卖股票最佳时机 II

    2024-04-10 06:36:06       31 阅读
  4. 123. 买卖股票最佳时机 III

    2024-04-10 06:36:06       36 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-10 06:36:06       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-10 06:36:06       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-10 06:36:06       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-10 06:36:06       20 阅读

热门阅读

  1. sh与bash:Shell脚本中的微妙差异

    2024-04-10 06:36:06       15 阅读
  2. 【bash自动补全原理】

    2024-04-10 06:36:06       14 阅读
  3. Flink SQL 报错 Illegal use of ‘NULL‘

    2024-04-10 06:36:06       18 阅读
  4. 数据建模:维度建模

    2024-04-10 06:36:06       14 阅读
  5. 成都龙渊网络 UE客户端开发(20min)

    2024-04-10 06:36:06       13 阅读
  6. torch.nn.LSTM

    2024-04-10 06:36:06       14 阅读