C++ day37 贪心算法 单调递增的数字 监控二叉树

题目1:738 单调递增的数字

题目链接:单调递增的数字

对题目的理解

返回小于或等于n的最大数字,且数字是单调递增(单调递增数字的定义:每个相邻位上的数字满足x<=y

贪心算法

注意本题的遍历顺序是从后往前遍历

伪代码

代码

cpp 复制代码
class Solution {
public:
    int monotoneIncreasingDigits(int n) {
        //将数字转换为字符串
        string str = to_string(n);
        int flag = str.size();
        //从后往前遍历
        for(int i=str.size()-1;i>0;i--){
            if(str[i]<str[i-1]){
                str[i-1]--;
                flag = i;//从i往后,都是9
            }
        }
        for(int j = flag;j<str.size();j++){
            str[j] = '9';
        }
        return stoi(str);

    }
};
  • 时间复杂度:O(n),n 为数字长度
  • 空间复杂度:O(n),需要一个字符串,转化为字符串操作更方便

题目2:968 监控二叉树

题目链接:监控二叉树

对题目的理解

节点上安装摄像头,每个摄像头都可以监控其父对象,自身及其直接子对象,求所有节点所需最小摄像头的数量。

相关推荐
alxraves6 分钟前
超声诊断图像的关键算法概述
算法·安全·健康医疗·制造·信号处理
mask哥11 分钟前
15种算法模式java实现详解
java·算法·力扣
若尘79712 分钟前
数学idea的重构
算法·职场和发展·机器人
思茂信息12 分钟前
CST可重构雷达吸波器设计与仿真
网络·算法·平面·智能手机·重构·cst·电磁仿
游乐码13 分钟前
c#插入排序
数据结构·算法·排序算法
史迪仔011213 分钟前
[QML] Qt6/Qt5四大渐变效果实战指南
开发语言·前端·c++·qt
乐迪信息15 分钟前
乐迪信息:AI防爆摄像机,船舶偏航逆行算法实时告警零漏检
大数据·人工智能·物联网·算法·机器学习·计算机视觉·目标跟踪
昵称小白19 分钟前
图论专题(上)
算法·深度优先·图论
大大杰哥19 分钟前
leetcode hot100(2)双指针,滑动窗口
数据结构·算法·leetcode
风筝在晴天搁浅23 分钟前
LeetCode CodeTop 113.路径总和Ⅱ
算法·leetcode