代码随想录-训练营-day26

452. 用最少数量的箭引爆气球 - 力扣(LeetCode)

这题是一个区间题,不过要求我们求最小的弓箭数,显然我们可以先进行排序,然后挨个比较气球的区间,如果两个气球的区间没有交集则弓箭数加一,如果有的话我们需要更新后一个气球的区间(因为我们必须在两个气球重叠的位置射箭才能满足要求)。

class Solution {
public:int findMinArrowShots(vector<vector<int>>& points) {int res=1;sort(points.begin(),points.end());for(int i=1;i<points.size();++i){if(points[i][0]>points[i-1][1]){++res;}else points[i][1]=min(points[i][1],points[i-1][1]);}return res;}
};

435. 无重叠区间 - 力扣(LeetCode)

这题要求我们移除最少的区间达到不重叠的效果,那么显然我们需要先对已有的集合进行排序才方便移除区间,除此之外我们还需要做的是维护一个当前的最右值,一旦发现后续的元素小于这个最右值我们就移除这个区间即可,这也就是我们的贪心思想的体现。

class Solution {
public:bool static cmp(const vector<int>& a,const vector<int>& b){return a[1]<b[1];}int eraseOverlapIntervals(vector<vector<int>>& intervals) {sort(intervals.begin(), intervals.end(),cmp);int res=0,end=intervals[0][1];for(int i=1;i<intervals.size();++i){if(intervals[i][0]<end)++res;else end=intervals[i][1];}return res;}
};

763. 划分字母区间 - 力扣(LeetCode)

这个题要求我们把一个字符串划分为尽可能多的区间的同时一个字母只允许出现在一个区间中,那么我们可以反过来利用这一点,记录每一个字母最后出现的位置,然后以此为划分区间的依据即可。

class Solution {
public:vector<int> partitionLabels(string s) {int last[26];for(int i=0;i<s.size();++i){last[s[i]-'a']=i;}int start=0,end=0;vector<int> res;for(int i=0;i<s.size();++i){end=max(end,last[s[i]-'a']);if(end==i){res.push_back(end-start+1);start=i+1;}}return res;}
};

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

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

相关文章

机器学习·决策树

前言 决策树是分类与回归问题中常用的方法之一。其实不仅是机器学习领域&#xff0c;在每天的日常决策中&#xff0c;我们都在使用决策树。流程图实际上就是决策树的可视化表示。 一、基本概念 决策树原理 通过一系列 逻辑规则&#xff08;特征分割条件&#xff09; 构建树形结…

Linux下载安装2

安装VMWare虚拟机 VMware是一个老牌的虚拟化软件。虚拟机指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整。 下载CentOS 进入Centos官网找要下载的版本https://vault.centos.org/ …

Excel中不用复杂公式根据指定X列的数值N复制整行数据N行简单方法

Excel中不用复杂公式根据指定X列的数值N复制整行数据N行简单方法 1、在“数据表”sheet1中对指定X列&#xff08;假设X列的数字从X2开始到Xn结束&#xff09;求和&#xff0c;和为Y。 2、在“数据表”sheet1数据列之外新建一列Z&#xff0c;Z1输入表头“匹配数据列”&#xff…

DeepSeek、Kimi、文心一言、通义千问:AI 大语言模型的对比分析

在人工智能领域&#xff0c;DeepSeek、Kimi、文心一言和通义千问作为国内领先的 AI 大语言模型&#xff0c;各自展现出了独特的特点和优势。本文将从技术基础、应用场景、用户体验和价格与性价比等方面对这四个模型进行对比分析&#xff0c;帮助您更好地了解它们的特点和优势。…

数据库数据恢复—MongoDB丢失_mdb_catalog.wt文件导致报错的数据恢复案例

MongoDB数据库存储模式为文档数据存储库&#xff0c;存储方式是将文档存储在集合之中。 MongoDB数据库是开源数据库&#xff0c;同时提供具有附加功能的商业版本。 MongoDB中的数据是以键值对(key-value pairs)的形式显示的。在模式设计上&#xff0c;数据库受到的约束更少。这…

Flink在指定时间窗口内统计均值,超过阈值后报警

1、需求 统计物联网设备收集上来的温湿度数据&#xff0c;如果5分钟内的均值超过阈值(30摄氏度)则发出告警消息&#xff0c;要求时间窗口和阈值可在管理后台随时修改&#xff0c;实时生效(完成当前窗口后下一个窗口使用最新配置)。 物联网设备的数据从kafka中读取&#xff0c…

Flutter Gradle 命令式插件正式移除,你迁移旧版 Gradle 配置了吗?

在 Flutter 3.29 版本里官方正式移除了 Flutter Gradle Apply 插件&#xff0c;其实该插件自 3.19 起已被弃用&#xff0c;同时 Flutter 团队后续也打算把 Flutter Gradle 从 Groovy 转换为 Kotlin&#xff0c;并将其迁移到使用 AGP&#xff08;Android Gradle Plugin&#xff…

15.Python网络编程:进程池、进程间通信、多线程、进程和线程区别、网络通信、端口、IP地址、socket、UDP、TCP、http

1. 进程池&#xff08;Process Pool&#xff09; 进程池是通过将多个进程放入池中管理来避免频繁地创建和销毁进程&#xff0c;提高效率。Python 提供了 multiprocessing.Pool 类来实现进程池&#xff0c;它可以用于并行计算任务。 示例&#xff1a;使用进程池 from multipr…

Vue 中报错 TypeError: crypto$2.getRandomValues is not a function

问题 在新建的项目中&#xff0c;使用的是 npm init vue 创建项目后&#xff0c;执行命令 npm i &#xff0c;然后去 npm run dev 这个时候报错 TypeError: crypto$2.getRandomValues is not a function 起初是以为搞错了&#xff0c;然后再删掉 node_modules 和 package-lo…

如何通过挂载debugfs来访问内核调试信息

1. DebugFS 的作用 bugFS 的作用 内核调试接口&#xff1a;允许内核模块或子系统在 DebugFS 中创建虚拟文件或目录&#xff0c;暴露调试信息。 动态交互&#xff1a;用户可以直接读写这些文件来查看或修改内核状态&#xff08;如调整日志级别、触发特定操作&#xff09;。 零…

001 SpringCloudAlibaba整合 - Nacos注册配置中心、Sentinel流控、Zipkin链路追踪、Admin监控

SpringCloudAlibaba 文章目录 SpringCloudAlibaba1.版本依赖关系2022.x 分支2021.x 分支2.2.x 分支 组件版本关系 2.基础项目构建1.引入全局pom文件2.创建对应的模块 3.SpringBootAdmin监控服务整合1.cloud-admin服务搭建1.导入服务端依赖2.主启动类添加EnableAdminServer注解启…

常用的网络安全设备

一、 WAF 应用防火墙 范围&#xff1a;应用层防护软件 作用&#xff1a; 通过特征提取和分块检索技术进行模式匹配来达到过滤&#xff0c;分析&#xff0c;校验网络请求包的目的&#xff0c;在保证正常网络应用功能的同时&#xff0c;隔绝或者阻断无效或者非法的攻击请求 可…

Jenkins 新建配置Pipeline任务 三

Jenkins 新建配置Pipeline任务 三 一. 登录 Jenkins 网页输入 http://localhost:8080 输入账号、密码登录 一个没有创建任务的空 Jenkins 二. 创建 任务 图 NewItem 界面左上角 New Item 图NewItemSelect 1.Enter an item name&#xff1a;输入任务名 2.Select an ite…

如何构建有效的人工智能代理

目录 什么是 AI 代理? 何时应使用 AI 代理? 人工智能代理的构建模块 构建 AI 代理的常用方法 1. 提示链接(分步说明) 2.路由(将任务发送到正确的地方) 3.并行处理(同时做多件事) 4. 协调者和工作者 AI(团队合作) 5. 评估器和优化器(修复错误) 如何让人工…

linux 下连接mysql(下)

case 表达式 表t1中的数据如下。 select * from t1; ---------------------------- | id | student_no | name | age | ---------------------------- | 3 | 202501 | ll | 10 | | 4 | 202502 | tt | 15 | ----------------------------如果学号是202501,…

hivemetastore 连接过多导致sql查询慢

MetaStore (DB)修改对应的处理连接数maxConnectionsPerPartition建议设置成 100 (不能超过最大值300)&#xff0c;重启Hive服务。 建议值100是根据与工行规模相当集群的设置作参考&#xff0c;尽量大满足连接数请求的同时考虑connection占用资源(如果connection太多会占用太多的…

sqli-labs布尔盲注

通过?id1及?id1判断是否存在sql注入的漏洞 ?id1有回显 ?id1无回显 再使用?id1 and 11 --及?id1 and 12 --判断是否为布尔盲注 ?id1 and 11 --有回显 ?id1 and 12 --无回显 为布尔盲注&#xff0c;使用python获取其中的库名&#xff0c;表名&#xff0c;列名及数据 1…

ovs源码分析

源码版本 ovs 内核部分的代码在linux内核的 /net/openswitch目录下&#xff0c;应用层控制面代码在ovs项目中。 Linux kernel: version 6.2.0 Ovs: v3.4.1 总体架构 整体结构图 ovs的架构如下图所示&#xff0c;主要由内核datapath、vswitchd、ovsdb以及用户空间的ovs-vs…

vue3实战-----使用mock模拟接口数据

vue3实战-----使用mock模拟接口数据 1.安装和配置2.创建mock数据3.使用axios测试 1.安装和配置 安装依赖:https://www.npmjs.com/package/vite-plugin-mock pnpm install -D vite-plugin-mock mockjs在 vite.config.js 配置文件启用插件: import { viteMockServe } from vit…

DeepSeek+Excel 效率翻倍

2025年初&#xff0c;DeepSeek以惊人的效率突破技术壁垒&#xff0c;用极低的成本实现了与行业顶尖AI相媲美的性能&#xff0c;瞬间成为全球科技领域的热门话题。 那么AI工具的普及将如何改变我们的工作方式&#xff1f;Excel会被取代吗&#xff1f; 今天&#xff0c;珠珠带你…