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

【代码随想录】算法训练计划36

贪心

1、435. 无重叠区间

题目:
给定一个区间的集合 intervals ,其中 intervals[i] = [starti, endi] 。返回 需要移除区间的最小数量,使剩余区间互不重叠 。

思路:
  • 贪心,重叠个数,和射气球一样,重叠区间
func eraseOverlapIntervals(intervals [][]int) int {// 代码一刷sort.Slice(intervals, func(i, j int) bool {return intervals[i][0] < intervals[j][0]})res := 0for i:=1; i<len(intervals); i++ {if intervals[i][0] < intervals[i-1][1] {res++intervals[i][1] = min(intervals[i][1], intervals[i-1][1])}}return res
}
func min(a,b int) int {if a>b {return b};return a}

2、763. 划分字母区间

题目:
输入:s = “ababcbacadefegdehijhklij”
输出:[9,7,8]

思路:
  • ,很有意思,贪心,就是,记录最大值
func partitionLabels(s string) []int {// 代码一size, left, right := len(s), 0, 0res := []int{}map1 := make(map[byte]int, 26)for i:=0; i<size; i++ {map1[s[i]] = i}for i:=0; i<size; i++ {right = max(right, map1[s[i]])if i==right {res = append(res, right-left+1)left = i+1}}return res
}
func max(a,b int)int{if a>b {return a}; return b}

3、56. 合并区间

题目:
输入:intervals = [[1,3],[2,6],[8,10],[15,18]]
输出:[[1,6],[8,10],[15,18]]
解释:区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].

思路:
  • 简单,贪心,区间问题
func merge(intervals [][]int) [][]int {// 代码一刷sort.Slice(intervals, func(i, j int) bool {return intervals[i][0]<intervals[j][0]})res := make([][]int, 0)left, right := intervals[0][0], intervals[0][1]for i:=1; i<len(intervals); i++ {if right < intervals[i][0] {res = append(res, []int{left, right})left, right = intervals[i][0], intervals[i][1]} else {right = max(right, intervals[i][1])}}res = append(res, []int{left, right})return res
}
func max(a, b int)int{if a>b {return a}; return b}

相关文章:

【代码随想录】算法训练计划36

贪心 1、435. 无重叠区间 题目&#xff1a; 给定一个区间的集合 intervals &#xff0c;其中 intervals[i] [starti, endi] 。返回 需要移除区间的最小数量&#xff0c;使剩余区间互不重叠 。 思路&#xff1a; 贪心&#xff0c;重叠个数&#xff0c;和射气球一样,重叠区间…...

Python (十五) 面向对象之多继承问题

程序员的公众号&#xff1a;源1024&#xff0c;获取更多资料&#xff0c;无加密无套路&#xff01; 最近整理了一波电子书籍资料&#xff0c;包含《Effective Java中文版 第2版》《深入JAVA虚拟机》&#xff0c;《重构改善既有代码设计》&#xff0c;《MySQL高性能-第3版》&…...

广域网加速技术

摘要&#xff1a; 随着企业数字化转型快速发展&#xff0c;越来越多企业将IT系统、应用和服务部署到云上&#xff0c;以实现更高效、灵活的管理和使用。这就对广域网提出了更高的要求&#xff0c;而广域网线路往往存在带宽费用昂贵、服务质量不可靠等问题。为了改善用户体验&am…...

构建智能医患沟通:陪诊小程序开发实战

在医疗科技的浪潮中&#xff0c;陪诊小程序的开发成为改善医患沟通的创新途径之一。本文将介绍如何使用Node.js和Express框架构建一个简单而强大的陪诊小程序&#xff0c;实现患者导诊和医生咨询功能。 1. 安装Node.js和Express 首先确保已安装Node.js&#xff0c;然后使用以…...

插入区间[中等]

优质博文&#xff1a;IT-BLOG-CN 一、题目 给你一个无重叠的 &#xff0c;按照区间起始端点排序的区间列表。在列表中插入一个新的区间&#xff0c;你需要确保列表中的区间仍然有序且不重叠&#xff08;如果有必要的话&#xff0c;可以合并区间&#xff09;。 示例 1&#x…...

Android Bitmap 模糊效果实现 (二)

文章目录 Android Bitmap 模糊效果实现 (二)使用 Vukan 模糊使用 RenderEffect 模糊使用 GLSL 模糊RS、Vukan、RenderEffect、GLSL 效率对比 Android Bitmap 模糊效果实现 (二) 本文首发地址 https://blog.csdn.net/CSqingchen/article/details/134656140 最新更新地址 https:/…...

初识Java 18-4 泛型

目录 泛型存在的问题 在泛型中使用基本类型 实现参数化接口 类型转换和警告 无法实现的重载 基类会劫持接口 自限定类型 奇异递归类型 自限定 自限定提供的参数协变性 本笔记参考自&#xff1a; 《On Java 中文版》 泛型存在的问题 接下来讨论的&#xff0c;是在泛型…...

家政保洁预约小程序app开发特点有哪些?

家政预约服务小程序APP开发的特点介绍&#xff1b; 1. 低成本&#xff1a;用户通过手机APP下单&#xff0c;省去了中介费用&#xff0c;降低了雇主的雇佣成本。 2. 高收入&#xff1a;家政服务人员通过手机APP接单&#xff0c;省去了中介费用&#xff0c;从而提高了服务人员的…...

【JavaEE初阶】 HTTP响应报文

文章目录 &#x1f332;序言&#x1f38d;200 OK&#x1f340;404 Not Found&#x1f384;403 Forbidden&#x1f334;405 Method Not Allowed&#x1f38b;500 Internal Server Error&#x1f333;504 Gateway Timeout&#x1f332;302 Move temporarily&#x1f38d;301 Move…...

PTA: 螺旋矩阵

题目 所谓“螺旋矩阵”&#xff0c;是指对任意给定的N&#xff0c;将1到NN的数字从左上角第1个格子开始&#xff0c;按顺时针螺旋方向顺序填入NN的方阵里。本题要求构造这样的螺旋方阵。 格式 输入格式: 输入在一行中给出一个正整数N&#xff08;<10&#xff09;。 输出…...

SparkSQL远程调试(IDEA)

启动Intellij IDEA&#xff0c;打开spark源码项目&#xff0c;配置远程调试 Run->Edit Configuration 启动远程spark-sql spark-sql --verbose --driver-java-options "-Xdebug -Xrunjdwp:transportdt_socket,servery,suspendy,address5005"运行远程调试&#xf…...

Vue2 Vue3 响应式实现原理

Vue2 和 Vue3 的响应式实现原理有所不同。 Vue2 响应式实现原理&#xff1a; Vue2 使用 Object.defineProperty() 方法来实现数据劫持&#xff0c;从而实现数据的响应式更新。具体步骤如下&#xff1a; 首先&#xff0c;在初始化阶段&#xff0c;遍历 data 对象的所有属性&a…...

Android Tombstone 与Debuggerd 原理浅谈

一、前言 Android系统类问题主要有stability、performance、power、security。tombstoned是android平台的一个守护进程&#xff0c;它注册成3个socket服务端&#xff0c;客户端封装在crash_dump和debuggerd_client。 crash_dump用于跟踪定位C crash&#xff0c; debuggerd_cli…...

Matlab 三维电力线重建

文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 之前曾经讨论过关于悬链线方程的曲线拟合点云最小二乘法拟合曲线,在这篇博客中其实拟合的是悬链线的一种近似形式,但对于大多数情况下已经够用了。方程如下所示: z = A ( x 2 + y 2 ) +...

GoLang Filepath.Walk遍历优化

原生标准库在文件量过大时效率和内存均表现不好 1400万文件遍历Filepath.Walk 1400万文件重写直接调用windows api并处理细节 结论 1400万文件遍历时对比 对比条目filepath.walkwindows api并触发黑科技运行时间710秒22秒内存占用480M38M 关键代码 //超级快的文件遍历 fun…...

Java面向对象第7天

精华笔记&#xff1a; 成员内部类&#xff1a;了解&#xff0c;应用率不高 类中套类&#xff0c;外面的称为外部类&#xff0c;里面的称为内部类 内部类只服务于外部类&#xff0c;对外不具备可见性 内部类对象通常在外部类中创建 内部类中可以直接访问外部类的成员(包括私有…...

网络安全如何自学?

1.网络安全是什么 网络安全可以基于攻击和防御视角来分类&#xff0c;我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术&#xff0c;而“蓝队”、“安全运营”、“安全运维”则研究防御技术。 2.网络安全市场 一、是市场需求量高&#xff1b; 二、则是发展相对成熟…...

Flink-时间窗口

在流数据处理应用中&#xff0c;一个很重要、也很常见的操作就是窗口计算。所谓的“窗口”&#xff0c;一 般就是划定的一段时间范围&#xff0c;也就是“时间窗”&#xff1b;对在这范围内的数据进行处理&#xff0c;就是所谓的 窗口计算。所以窗口和时间往往是分不开的。 时…...

软件设计模式原则(三)单一职责原则

单一职责原则&#xff08;SRP&#xff09;又称单一功能原则。它规定一个类应该只有一个发生变化的原因。所谓职责是指类变化的原因。如果一个类有多于一个的动机被改变&#xff0c;那么这个类就具有多于一个的职责。而单一职责原则就是指一个类或者模块应该有且只有一个改变的原…...

使用Postman创建Mock Server

这篇文章将教会大家如何利用 Postman&#xff0c;通过 Mock 的方式测试我们的 API。 什么是 Mock Mock 是一项特殊的测试技巧&#xff0c;可以在没有依赖项的情况下进行单元测试。通常情况下&#xff0c;Mock 与其他方法的主要区别就是&#xff0c;用于取代代码依赖项的模拟对…...

中兴B860AV3.2-T芯片型号鉴别与刷机固件匹配全攻略

1. 中兴B860AV3.2-T芯片型号鉴别的重要性 最近在折腾中兴B860AV3.2-T盒子时&#xff0c;我发现一个特别容易踩坑的地方——这盒子居然有两种不同的处理器芯片&#xff01;一种是S905L3B&#xff0c;另一种是S905L3SB。刚开始我也没太在意这个区别&#xff0c;结果刷机时直接翻车…...

OpenClaw对接Qwen3-4B-Thinking-2507-GPT-5-Codex-Distill-GGUF实战:3步完成本地模型调用

OpenClaw对接Qwen3-4B-Thinking-2507-GPT-5-Codex-Distill-GGUF实战&#xff1a;3步完成本地模型调用 1. 为什么选择本地模型对接&#xff1f; 去年冬天&#xff0c;当我第一次尝试用OpenClaw自动化处理周报时&#xff0c;发现调用云端API不仅响应慢&#xff0c;还频繁遇到限…...

培养孩子批判性思维5W1H,从学会提问开始

1. 何为批判性思维&#xff1f;在《单向度的人》中&#xff0c;哲学家马尔库赛说&#xff1a;人类有两种思维&#xff0c;一种肯定&#xff0c;一种批判&#xff0c;缺乏任何一种都不算是健全的。 简单来讲&#xff0c;批判性思维就是一种理性的能力&#xff0c;当面对权威发出…...

OpenClaw调试技巧:捕获Qwen3.5-9B错误推理的5个方法

OpenClaw调试技巧&#xff1a;捕获Qwen3.5-9B错误推理的5个方法 1. 为什么需要关注模型推理错误 上周我让OpenClaw自动整理项目文档时&#xff0c;发现它把"API响应时间优化方案"归类到了"前端样式规范"目录。这个看似简单的错误背后&#xff0c;是Qwen3…...

日志系统整体设计步骤以及功能函数梳理

首先到底要做一个什么东西&#xff1f;我们要造一个 C 高并发异步日志库&#xff0c;功能如下&#xff1a;用 LOG_INFO << "xxx" 这种简单写法自动带&#xff1a;时间、级别、文件名、函数名、行号支持级别过滤&#xff08;TRACE/DEBUG/INFO/WARN/ERROR/FATAL&…...

IDEA中使用Claude Code

1、先安装好node.js 安装好之后验证是否安装成功 nodejs下载安装地址https://nodejs.p2hp.com/安装结束后&#xff0c;执行以下命令查看安装结果&#xff0c;若显示版本号则安装成功。 node --version 2、使用npm安装Claude Code ​​​​​​​npm install -g anthropic-ai…...

k8s与docker compose的思考

1.稍微复杂2.ip会漂移&#xff0c;各种端口转发性能有所损失。3.占用一定的资源4.master需要高可用5.更适合web无状态docker-compose则比较简单&#xff0c;搭建本地环境就一个配置文件的事情&#xff0c;简直是本地test环境神器。...

架构实战:基于海事网关实现老旧船舶 OT 系统的安全上行与协议转换

摘要&#xff1a; 本文针对老旧船舶数字化改造中“资产利旧”与“合规安全”的双重挑战&#xff0c;深度拆解利用边缘计算能力打通传统串口到 海事网络设备管理平台&#xff08;RCMS Stack Marine&#xff09; 加密通道的技术细节。重点涵盖 Python 协议重构、离线缓冲与符合 I…...

气象、水文、区域气候--从零搭建 WRF 实验室:Linux 编译 + Python 绘图 + 下垫面改造一站式技术

做气象、水文、气候、环境、地理遥感等领域的科研人&#xff0c;是不是都逃不过这些噩梦&#xff1a;编译地狱&#xff1a;Linux 环境下 NetCDF、MPI、WRF 编译报错满天飞&#xff0c;compile.log里的 Error 看不懂&#xff0c;卡了一周连第一步都跑不通环境混乱&#xff1a;Fo…...

NCMDump:突破网易云音乐格式限制的开源解密工具

NCMDump&#xff1a;突破网易云音乐格式限制的开源解密工具 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 当你下载了喜爱的音乐却发现文件格式被加密&#xff0c;无法在其他设备播放时&#xff1b;当你想备份音乐收藏却受限于专有…...