Leetcode解题笔记121. Best Time to Buy and Sell Stock [Easy] 动态规划

来源:互联网 发布:软件平台下载 编辑:程序博客网 时间:2024/06/06 00:50

解题思路

设v[i]为第i天前的购入最便宜值,则v[i] = min(v[i - 1], prices[i - 1]), 取一变量记录最大的prices[i] - v[i]即可。

代码

class Solution {public:    int maxProfit(vector<int>& prices) {        if (prices.empty()) return 0;        int maxW = 0;        vector<int> v(prices.size());        v[0] = prices[0];        for (int i = 1; i < prices.size(); i++) {            v[i] = min(v[i - 1], prices[i - 1]);            maxW = max(prices[i] - v[i], maxW);        }        return maxW;    }};
阅读全文
0 0
原创粉丝点击