【刷题DAY32】112, 55, 45.md

122. 买卖股票的最佳时机 II

题目链接:https://leetcode.cn/problems/best-time-to-buy-and-sell-stock-ii/description/

0x1 看到题目的第一想法

0x2 自己实现过程中遇到哪些困难

0x3 今日学习的文章链接,或者视频链接

0x4 看完代码随想录之后的想法

  • 收益拆分
    • prices可以得到每天的利润序列:(prices[i] - prices[i - 1])…..(prices[1] - prices[0])
    • 贪心:收集正利润的区间,就是股票买卖的区间,只关注最终利润,不需要记录区间
  • 想不到

0x5 今日收获,记录一下自己的学习时长

  • 拆分
  • 1h

55. 跳跃游戏

题目链接:https://programmercarl.com/0055.跳跃游戏.html

0x1 看到题目的第一想法

0x2 自己实现过程中遇到哪些困难

0x3 今日学习的文章链接,或者视频链接

0x4 看完代码随想录之后的想法

  • 每次移动取最大跳跃步数(得到最大的覆盖范围),每移动一个单位,就更新最大覆盖范围。看跳跃覆盖范围究竟可不可以覆盖到终点

0x5 今日收获,记录一下自己的学习时长

  • 1h

45. 跳跃游戏 II

题目链接:https://leetcode.cn/problems/jump-game-ii/description/

0x1 看到题目的第一想法

0x2 自己实现过程中遇到哪些困难

0x3 今日学习的文章链接,或者视频链接

0x4 看完代码随想录之后的想法

  • 当前可移动距离尽可能多走,如果还没到终点,步数再加一。整体最优:一步尽可能多走,从而达到最小步数。
  • 当移动下标达到了当前覆盖的最远距离下标时
    • 如果当前覆盖最远距离下标不是是集合终点,步数就加一,还需要继续走。
    • 如果当前覆盖最远距离下标就是是集合终点,步数不用加一,因为不能再往后走了
  • 不太好想

0x5 今日收获,记录一下自己的学习时长

  • 1h

总结

  • 贪心
    • 股票利润
    • 跳跃游戏

复习

  • day2
    • 977
      • 双指针寻找合适的区间
      • 知道是双指针,代码还是写错了,我外面套while,里面套if,报错了。right是一直要动的,我写成right就只会在count小于target的时候才移动
      • 外面用while控制right,利用用while控制left
    • 50
      • python n * n 矩阵的写法
      • 循环不变量

待重点复习

122, 55, 45, 977