代码随想录算法训练营第三十七天|738.单调递增的数字 、968.监控二叉树

代码随想录算法训练营第三十七天|738.单调递增的数字 、968.监控二叉树

单调递增的数字

738.单调递增的数字
文章讲解:https://programmercarl.com/0738.%E5%8D%95%E8%B0%83%E9%80%92%E5%A2%9E%E7%9A%84%E6%95%B0%E5%AD%97.html
题目链接:https://leetcode.cn/problems/monotone-increasing-digits/
视频讲解:https://www.bilibili.com/video/BV1Kv4y1x7tP/

自己看到题目的第一想法

遍历字符,从后往前遍历,用后的值和前的值比较,尽量取后的值一样的,取不到一样的就取最大的。(后面发现题目没审清楚,比如232不是变成222而是变成229)。

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

遍历数字,发现前一个大于后一个的话就把前一个减一后一个变成九。
但是这里要注意从前遍历还是从后面开始遍历。
从前往后遍历的话如332的话,就会变回329这种是正确的。

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

整体链路理解都差不多,但是自己写的时候差点意思,主要还是数字转字符串又转字符串数组的,没通过。
整体思路:

  1. 使用传参 + N + “”,把数字转成字符串就再使用split(“”)方法截断成字符串数组。
  2. 初始化flag位置为数组的length位置
  3. 处理判断逻辑,倒序遍历,发现前面的比后面的大,前面的减1,再将flag置为i。
  4. 遍历字符串数组,从flag开始到最后,将遍历过的字符串都变成“9”。

监控二叉树

968.监控二叉树
文章讲解:https://programmercarl.com/0968.%E7%9B%91%E6%8E%A7%E4%BA%8C%E5%8F%89%E6%A0%91.html
题目链接:https://leetcode.cn/problems/binary-tree-cameras/
视频讲解:https://www.bilibili.com/video/BV1SA411U75i/

自己看到题目的第一想法

监控二叉树留着二刷

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

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

今日收获&学习时长

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值