news 2026/4/28 22:07:11

A.每日一题——3507. 移除最小数对使数组有序 I

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
A.每日一题——3507. 移除最小数对使数组有序 I

题目链接:3507. 移除最小数对使数组有序 I(简单)

算法原理:

解法:模拟

3ms击败55.74%

时间复杂度O(N²)

由于数据范围非常小,所以直接按题意模拟即可

将nums的所有相邻元素全部扔进顺序表里,方便修改,在遍历顺序表的同时做三件事👇

①维护最小相邻数对和

②记录最小相邻数对和的第一个数出现的下标index

③判断nums是否满足非递减条件,如果不满足就更新

更新时,先将index置为新的最小和,然后删掉index+1位置的值

④重复以上操作,直至满足非递减条件或者只剩下一个数为止

Java代码:

class Solution { public int minimumPairRemoval(int[] nums) { List<Integer> list=new ArrayList<>(); for(int x:nums) list.add(x); int count=0; while(list.size()>1){ //默认满足非递减条件 boolean islegal=true; //维护最小和 int minsum=0x3f3f3f3f; //标记要修改的位置 int index=0; for(int i=0;i<list.size()-1;i++){ int sum=list.get(i)+list.get(i+1); //判断是否非递减 if(list.get(i)>list.get(i+1)) islegal=false; //更新最小和 if(sum<minsum){ minsum=sum; index=i; } } if(islegal) break; //没有break,说明还是非递减的状态,需要移除最小和 count++; list.set(index,minsum); list.remove(index+1); } return count; } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/28 22:06:32

【毕业设计】基于springboot的西安秦岭野生动物园智能化管理系统(源码+文档+远程调试,全bao定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/4/17 18:43:03

Linux中批量修改文件名的方法

使用 rename 命令&#xff1a; rename s/\.jpg$/\.png/ *.jpg 这里的s代表替换操作&#xff0c;\.jpg$是匹配.jpg文件名的正则表达式&#xff0c;\.png是新文件名的格式。

作者头像 李华
网站建设 2026/4/17 16:44:19

Java计算机毕设之基于springboot的饰品商城系统基于SpringBoot+Vue的饰品商城系统(完整前后端代码+说明文档+LW,调试定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/4/25 22:00:14

基于 YOLOv8 的水稻病害智能检测系统实战源码【从农田到模型】

基于 YOLOv8 的水稻病害智能检测系统实战源码【从农田到模型】 一、项目背景&#xff1a;为什么要做“水稻病害检测系统”&#xff1f; 在传统农业生产中&#xff0c;病害识别严重依赖人工经验。实际问题主要集中在三点&#xff1a; 巡田成本高&#xff1a;大面积农田靠人工…

作者头像 李华