Advertisement

LeetCode 精选题目100 | 贪心算法

阅读量:

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

解题思路:

  • 设置一个变量 max_price
  • 该变量的作用是记录第 i 天之后股票价格的峰值
  • 第 i 天所能获取的最大收益等于 max_price 与当天股票价格之间的差值

思路说明:

假定股票价格序列是 [7,1,5,3,6,4],通过从数组末尾向前依次扫描的方式计算 max_price,具体过程如图所示。

1)【1)当第 i 天的股票价格小于 max_price 时,

  • 第 i 天所能获取的最大收益为 max_price 减去该日的股票价格
  • 此时应调整 profit 的数值
  • 此时无需对 max_price 进行修改

2)当第 i 天的股票价格大于 max_price 时,

  • 第 i 天所能获取的最大收益为零
  • 此时无需调整 profit 的数值
  • 此时应更新 max_price 的值

在以下代码实现中,我采用变量 ans 来表示 profit 所对应的含义。

复制代码
 class Solution {

    
 public:

全部评论 (0)

还没有任何评论哟~