代码随想录算法训练营第三十七 | ● 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

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--) {//找到从哪个位置赋值为9if(strNum[i-1]>strNum[i]) {//i-1处减一,从i往后都赋为9flag = i;strNum[i-1] --;}}for(int i=flag;i<strNum.size();i++) {strNum[i]='9';}//将字符串转为十进制return stoic(strNum);}
};

968.监控二叉树

讲解链接:https://programmercarl.com/0968.%E7%9B%91%E6%8E%A7%E4%BA%8C%E5%8F%89%E6%A0%91.html

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     TreeNode *left;*     TreeNode *right;*     TreeNode() : val(0), left(nullptr), right(nullptr) {}*     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}*     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/
class Solution {
public:int result;int traversal(TreeNode* cur) {//将空结点看作是有覆盖(标记为2)if(cur==NULL)return 2;int left = traversal(cur->left);int right = traversal(cur->right);//左右节点都有覆盖if(left == 2 && right ==2)return 0;//左右至少有一个节点没有被覆盖else if(left==0 || right==0) {result++;return 1;}elsereturn 2;}int minCameraCover(TreeNode* root) {result = 0;if(traversal(root) ==0)result++;return result;}};

代码随想录贪心算法总结

https://programmercarl.com/%E8%B4%AA%E5%BF%83%E7%AE%97%E6%B3%95%E6%80%BB%E7%BB%93%E7%AF%87.html#%E6%80%BB%E7%BB%93

文中最后有一张贪心算法题目的思维导图,真的很详细

最近的OneNote笔记同步掉链子了,手写的思路没有放上…

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/21340.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

项目集成过程中的makefile记录

项目集成过程中的makefile记录 文章目录 项目集成过程中的makefile记录1.基础概念注释打印赋值方式常用变量$ 伪目标函数wildcard 多目录、文件操作 2.思路梳理**需求分析**目录结构 3.可行示例 持续更新中1.基础概念 注释 # 示例&#xff1a; # 项目名称打印 echo "H…

控制台相关

输入输出 输出 Console.WriteLine("123123");//光标空行 Console.Write("123123123123");//不空行输入 string str Console.ReadLine(); //如果在ReadKey(true)不会把输入的内容显示在控制台上 char c Console.ReadKey(true).KeyChar; Console.WriteL…

ACM实训第25天

第四套 第一道&#xff08;修改&#xff09; #include<stdio.h> #include<string.h> int cnt[10]; void count_digits(int n,int* cnt){for(int i1;i<n;i){int numi;while(num){cnt[num%10];num/10;}} } int main(){int t;scanf("%d\n",&t);whi…

力扣刷题--2553. 分割数组中数字的数位【简单】

题目描述 给你一个正整数数组 nums &#xff0c;请你返回一个数组 answer &#xff0c;你需要将 nums 中每个整数进行数位分割后&#xff0c;按照 nums 中出现的 相同顺序 放入答案数组中。 对一个整数进行数位分割&#xff0c;指的是将整数各个数位按原本出现的顺序排列成数…

名为投资实为借贷,如何处理

投资近百万参与号称“高回报、零风险”的内部商铺投资项目&#xff0c;与公司签订商铺投资合同及租赁合同。本想投资商铺收取租金&#xff0c;没想到不仅租金没拿到手&#xff0c;连本金都要不回来。 2019年底&#xff0c;原告何某&#xff08;乙方&#xff09;与被告祁东县某…

QSettings注册表 json双模式配置文件

qt QSettings 类可用来保存软件设置&#xff0c;json文件也是保存软件设置的很好的方式&#xff0e; 这里结合json文件和QSettings注册表来保存软件设置&#xff0e;区别在于json文件在软件目录&#xff0c;每次更新时会被覆盖&#xff0c;注册表中设置持久有效&#xff0c;…

14.FreeRTOS 消息缓存 Message Buffer

FreeRTOS 消息缓存&#xff08;Message Buffer&#xff09;的使用 介绍 在实时操作系统&#xff08;RTOS&#xff09;中&#xff0c;任务之间的通信是一个非常重要的方面。FreeRTOS 提供了多种机制来实现任务间通信&#xff0c;其中之一就是消息缓存&#xff08;Message Buffe…

【IC验证】一文速通多通道数据整型器(MCDF)

目录 01 README 02 MCDF设计结构 2.1 功能描述 2.2 设计结构 2.3 接口与时序 2.3.1 系统信号接口 2.3.2 通道从端接口 2.3.3 整形器接口 2.3.4 控制寄存器接口 2.3.4.1 接口时序图 2.3.4.2 各数据位信息 03 验证框图 3.1 reg_pkg 3.1.1 reg_trans 3.1.2 reg_driv…

【一刷《剑指Offer》】面试题 27:二叉搜索树与双向链表

牛客对应题目链接&#xff1a;二叉搜索树与双向链表_牛客题霸_牛客网 (nowcoder.com) 力扣对应题目链接&#xff1a;LCR 155. 将二叉搜索树转化为排序的双向链表 - 力扣&#xff08;LeetCode&#xff09; 一、《剑指 Offer》对应内容 二、分析题目 上面力扣上的这道题目和牛客…

AGM DAP-LINK 离线烧录报错信息分析

DAP-LINK 支持离线烧录。 即&#xff1a;先把要烧录的bin 烧录到DAP-LINK 中&#xff1b;然后DAP-LINK 可以脱离PC&#xff0c;上电后通过按键对目标板进行烧录。 CMSIS-DAP模式 跳线JGND断开&#xff0c;状态LED D4快闪&#xff0c;D3常亮&#xff08;串口状态&#xff09;。…

deepin开发web前端:探索、挑战与无限可能

deepin开发web前端&#xff1a;探索、挑战与无限可能 在数字化浪潮汹涌的时代&#xff0c;Web前端作为连接用户与数字世界的桥梁&#xff0c;其重要性日益凸显。而deepin作为一款优秀的开源操作系统&#xff0c;为Web前端开发者提供了广阔的舞台。本文将围绕deepin开发Web前端…

接口设计的最佳实践-下篇

大多数程序员&#xff0c;做得最多的事&#xff0c;也不过是写接口这件事而已。 今天继续总结下接口设计需要注意的点。尽量每种都给出具体的场景、案例等&#xff0c;希望大家能有所收获。 1、接口幂等 幂等性&#xff1a;是指一个操作或者一个服务&#xff0c;无论执行多少…

小程序怎样进行本地存储的读、写、删、清?

小程序进行本地存储的读、写、删、清操作&#xff0c;可以通过微信小程序提供的API来实现。这些API分为同步和异步两种类型&#xff0c;以满足不同的使用场景和需求。 同步操作 同步操作会阻塞后续的代码执行&#xff0c;直到操作完成。 写入本地缓存&#xff08;写&#xf…

Vue3 - Mac系统用文本编辑写html不显示效果的坑

平时在win系统下&#xff0c;可以直接对文本进行编辑&#xff0c;非常的舒服。 在mac系统中&#xff0c;也有类似的功能&#xff0c;就是文本编辑&#xff0c;没想到居然还有坑。 这是我mac系统中创建的html文件&#xff0c;想着没有几行代码&#xff0c;就没有开编辑器了&am…

C语言 | Leetcode C语言题解之第125题验证回文串

题目&#xff1a; 题解&#xff1a; bool isalumn(char c) {return (c > a && c < z) || (c > A && c < Z) || (c > 0 && c < 9); }bool isPalindrome(char* s) {for (int left 0, right strlen(s) - 1; left < right; left, …

【数据库系统概论】事务

概述 在数据库系统中&#xff0c;事务&#xff08;Transaction&#xff09;是指一组作为单个逻辑工作单元执行的操作。这些操作要么全部成功&#xff08;提交&#xff09;&#xff0c;要么全部失败&#xff08;回滚&#xff09;。事务的主要目的是确保数据库的完整性和一致性&…

AI与NLP的完美结合:揭秘ChatGPT

AI与NLP的完美结合&#xff1a;揭秘ChatGPT 一、AI大模型的发展历程 AI大模型的发展可追溯到早期的深度学习技术。深度学习通过多层神经网络处理复杂的数据模式&#xff0c;显著提升了图像识别、语音识别等领域的性能。随后&#xff0c;研究人员将注意力转向NLP&#xff0c;开…

【传知代码】多视图3D目标检测位置嵌入变换(论文复现)

前言&#xff1a;三维目标检测技术正逐渐成为计算机视觉领域的重要研究方向。特别是在自动驾驶、增强现实&#xff08;AR&#xff09;、虚拟现实&#xff08;VR&#xff09;以及机器人导航等应用中&#xff0c;对三维空间内目标的精准检测与定位显得尤为重要。然而&#xff0c;…

人脸解锁优化关键过程

一.人脸解锁的关键过程 1. 按下power键 2. 屏幕点亮 3. 打开前摄 4. 获取第一帧并传给算法 5. 算法完成并返回结果 6. 解锁完成并关闭相机 二. 相机优化点 1. 定制人脸解锁自己的pipeline,去掉不必要的node,理论上只需要一个preview的pipeline 2. 使用AE warm up&#xff0c;减…

SAP_SD模块-销售交货并开票后发现物料没维护价格的完整处理方法(含POD功能)

销售流程完结后&#xff0c;发现物料价格没维护时&#xff0c;如何处理 一、业务背景&#xff1a; 1、问题发现时间&#xff1a;2024年6月2日&#xff1b; 2、问题描述&#xff1a; 2024年5月份的单据业务存在交货成本和开票成本为0的单据&#x…