[LeetCode] 122. Best Time to Buy and Sell Stock II

原创 2016年08月31日 10:51:46

思路:
和上题思路相似, 如果当前价格比前一个价格高的话, 咱们就应该做买卖操作, 并依据规律把最小值设置为当前值, 如果当前价格不高于前一个价格的话, 就更新最小价格即可.

int maxProfit(vector<int>& prices) {
    if (prices.size() < 2)
        return 0;
    int minPrice = prices[0], maxPro = 0;
    for (int i = 1; i < prices.size(); i++) {
        if (prices[i] > prices[i - 1]) {
            maxPro += prices[i] - minPrice;
            minPrice = prices[i];
        }
        else
            minPrice = min(minPrice, prices[i]);
    }
    return maxPro;
}

【LeetCode-面试算法经典-Java实现】【121-Best Time to Buy and Sell Stock(最佳买卖股票的时间)】

【121-Best Time to Buy and Sell Stock(最佳买卖股票的时间)】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】原题  Say you have a...
  • DERRANTCM
  • DERRANTCM
  • 2015年08月14日 06:16
  • 6381

Best Time to Buy and Sell Stock II 最佳时间买入卖出股票(多次买卖)@LeetCode

package Level3; /** * Best Time to Buy and Sell Stock II * * Say you have an array for which t...
  • hellobinfeng
  • hellobinfeng
  • 2013年11月07日 12:34
  • 9780

Best Time to Buy and Sell Stock 最佳时间买入卖出股票(一次买入卖出) @LeetCode

package Level2; /** * Best Time to Buy and Sell Stock * * Say you have an array for which the ...
  • hellobinfeng
  • hellobinfeng
  • 2013年10月19日 00:29
  • 1983

Best Time to Buy and Sell Stock III 最佳时间买入卖出股票(最多两次买卖)@LeetCode

直到要用DP做,但是一开始思路是错的。后来参考了 http://blog.csdn.net/pickless/article/details/12034365 才意识到可以在整个区间的每一点切开,然后...
  • hellobinfeng
  • hellobinfeng
  • 2013年11月08日 00:34
  • 20493

Best Time to Buy and Sell Stock III 两次买卖股票的最佳时机 (重重重)

题目: 只能买卖两次,er
  • skyoceanlover
  • skyoceanlover
  • 2014年08月21日 16:51
  • 787

【Leetcode】Stock Buy and Sell 系列问题 终极分析!

股票系列一共五个变种,这里先分析其中的三个。 第一个:https://leetcode.com/problems/best-time-to-buy-and-sell-stock/?tab=Descri...
  • u010900754
  • u010900754
  • 2017年02月20日 04:27
  • 253

动态规划的经典问题初探: Best Time to Buy and Sell Stock(DP)

1.DescriptionSay you have an array for which the ith element is the price of a given stock on day i....
  • w_bu_neng_ku
  • w_bu_neng_ku
  • 2017年10月26日 01:33
  • 60

Best Time to Buy and Sell Stock III(最多出手两次的多大获利)

出现的bugs: (1)由两个if的来计算序列的值,讨论了>和 (2)引用初始化。在两个函数里的两个参数引用初始化了同一个vector,结果是第二个引用参数由于iterator的更改而全部失效,也...
  • ylzintsinghua
  • ylzintsinghua
  • 2014年12月13日 16:14
  • 306

【LeetCode-面试算法经典-Java实现】【113-Path Sum II(路径和)】

【113-Path Sum II(路径和II)】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】原题  Given a binary tree and a sum, find al...
  • DERRANTCM
  • DERRANTCM
  • 2015年08月12日 06:23
  • 2523

买卖股票的最佳时机I II III IV

买卖股票的最佳时机I II III IV I假设有一个数组,它的第i个元素是一支给定的股票在第i天的价格。如果你最多只允许完成一次交易(例如,一次买卖股票),设计一个算法来找出最大利润。II假设有一...
  • u010669349
  • u010669349
  • 2017年12月22日 22:47
  • 34
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[LeetCode] 122. Best Time to Buy and Sell Stock II
举报原因:
原因补充:

(最多只允许输入30个字)