当前位置: 首页 > news >正文

DAY37:贪心算法738

今天写了一道题目,顺便看了一个很好的总结,这篇博客可以跳过。

Leetcode:738 单调递增的数字

因为最大的数字是9,当出现后面位数的数字比前面位数的数字小的时候,就把后面的数字都变成9,前面那个数字--。这要求我们从后向前遍历,记录变化的位置,防止修改后的数字出现反复修改的情况。

时间复杂度O(N)

空间复杂度O(N)

class Solution {
public:int monotoneIncreasingDigits(int n) {string strNum = to_string(n);//把数字转化为字符串更加好操作int flag = strNum.size();for(int i = strNum.size() - 1; i > 0; i--){if(strNum[i - 1] > strNum[i]){flag = i;//记录需要--的位数strNum[i - 1]--;}}for(int i = flag; i < strNum.size(); i++){strNum[i] = '9';//将后面的数字都改成9}return stoi(strNum);}
};

Leetcode:968.监控二叉树

这道题比较困难,之后继续学习

代码随想录

总结

代码随想录

贪心题目没有统一的模板和规律,理解题目基本意思之后,题目代码一般都比较简单。但是如果没有先判断出是贪心问题,没有想到精妙的贪心策略就比较困难了。

http://www.lryc.cn/news/292216.html

相关文章:

  • 计算机中的缓存与内存
  • 2.1总结
  • 探索Pyecharts:绘制多彩日历图的艺术与技巧
  • 响应标头Allow-Headers和Expose-Headers的区别和用法
  • <网络安全>《13 上网行为管理》
  • 安全通道堵塞识别摄像机
  • 2022 年全国职业院校技能大赛高职组云计算赛项试卷
  • Android开发中,Vue 3处理回退按键事件
  • three.js CSS3DRenderer、CSS3DSprite渲染HTML标签
  • 【BBF系列协议】TR369管理平台软件设计
  • 微信小程序 仿微信聊天界面
  • 中国社会科学院大学-新加坡社科大学 招生简章
  • js中继承的详解(一文读懂)
  • Android studio使用svg矢量图
  • 《Access Path Selectionin a Relational Database Management System》论文笔记
  • 【AI_Design】Midjourney学习笔记
  • 面试宝典之深谈JVM
  • idea配置tomcat
  • 【MyBatis】操作数据库——入门
  • 免费分享一套SpringBoot+Vue药店(药房)管理系统,帅呆了~~
  • 视频怎么加水印?分享两个简单的加水印的方法
  • Apache Commons Collection3.2.1反序列化分析(CC1)
  • MySQL入门篇(10)-聚合函数的应用
  • Vue3基本概念
  • 每日OJ题_算法_模拟①_力扣1576. 替换所有的问号
  • 杂题——试题 算法训练 区间最大和
  • (安卓)跳转应用市场APP详情页的方式
  • 亚信安全助力宁夏首个人工智能数据中心建成 铺设绿色算力安全底座
  • ASP.NET Core WebAPI_解决跨域问题(前端后端)
  • 保姆级的指针详解(超详细)