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

A.每日一题:1846. 减小和重新排列数组后的最大元素

题目链接:1846. 减小和重新排列数组后的最大元素(中等)

算法原理:

解法一:贪心+直接排序

7ms击败82.31%

时间复杂度O(n logn)

贪心思路很简单:将整个数组从小到大升序排序,由于所有数都≥1,因此将第一个元素设置为1,往后依次遍历,如果发现 arr[i]-arr[i-1]>1,就将 arr[i] 设置为 arr[i-1]+1,最终的 arr[n-1] 即为答案

解法二:贪心+计数排序

3ms击败98.01%

时间复杂度O(N)

对于最终的数组,从左往右看,第一个数是1,在持续递增的情况下,最后一个数最多为 n

这就意味着,原数组 arr 中所有>n 的数都要减小到≤ n,因此 ≥ n 的数都可以视作 n,这样我们就确定好了上限,可以在 1~n 之间使用计数排序进行计算了~~

遍历数组,统计它们的个数数组,记 cnt[x]为 arr 中 x 的个数

和解法一相同,从左往右遍历一遍,假设现在遍历完 ≤ 4 的数,得到的最大值为2,那么我们继续遍历的过程中:

①如果 cnt[5]=2,新的最大值是多少??第一个5减小为3,第二个5减小为4,这样就能续上了,最大值为4

②如果 cnt[5]=4,新的最大值是多少??第一个5减小为3,第二个5减小为4,第三个5不变,第四个5不变,最大值为5

因此当遍历到 cnt[x]之前得到的最大值为 mx,那么到 cnt[x]的时候,我们可以将 mx 增大至 mx+cnt[x],但这个数不能超过 x,因此计算式子为 mx=min(mx+cnt[x],x)

Java代码:

class Solution { //1846. 减小和重新排列数组后的最大元素 //解法一:贪心+直接排序 public int maximumElementAfterDecrementingAndRearranging(int[] arr) { int n=arr.length; Arrays.sort(arr); arr[0]=1; for(int i=1;i<n;i++) if(arr[i]-arr[i-1]>1) arr[i]=arr[i-1]+1; return arr[n-1]; } }
class Solution { //1846. 减小和重新排列数组后的最大元素 //解法二:贪心+计数排序 public int maximumElementAfterDecrementingAndRearranging(int[] arr) { int n=arr.length; int[] cnt=new int[n+1]; for(int x:arr) cnt[Math.min(n,x)]++; int mx=0; for(int x=1;x<=n;x++) mx=Math.min(mx+cnt[x],x); return mx; } }
http://www.jsqmd.com/news/1222493/

相关文章:

  • 武汉初阳教育2026年专升本考前辅导全解析(权威指南) - 武汉中职最新信息发布
  • 2026新疆玉器合规商家行业排行情况汇总参考 - 互联网科技品牌测评
  • 2026年安卓开发板工厂终极选购指南:深度测评五家真实力派,让你的决策不踩坑 - 品牌报告
  • 泉州改灯选嘟嘟车灯,专业实力铸就本地口碑标杆 - Ayu8888
  • 基于NXP-LPC55S69手动移植FreeRTOS教程
  • 祥玉奇源玉器行:深耕十六载的和田玉专营全链服务商 - 互联网科技品牌测评
  • 抖音翡翠商家排行:5家实体店铺深度盘点 - 互联网科技品牌测评
  • 权威信息公示!亨得利官方服务项目及价格查询|详细网点地址及服务电话(2026年7月最新) - 亨得利官方
  • 全国正品翡翠加工定制店排行 基于工艺与服务的客观盘点 - 互联网科技品牌测评
  • 2026 常熟地下室防水排名 TOP3,别墅 / 车库返潮渗水正规商家测评 - 苏易房屋修缮
  • 信息管理与信息系统考什么证书对就业有用
  • 2026 昆山地下室防水排名 TOP3,别墅 / 车库返潮渗水正规商家测评 - 苏易房屋修缮
  • 海光DCU上部署IndexTTS-2:实现情感可控的零样本语音克隆(完整教程)
  • 基于WebAssembly的位图矢量化技术实现机制与工程实践
  • 2026天津包车公司排名前三强全解析:含商务接待与会展用车攻略,教你识别正规靠谱车队 - 米米Ada
  • 2026年7月最新宝玑温州大悦城维修保养服务电话 - 亨得利钟表维修中心
  • FreeRTOS xTaskCreate 最后一个参数传地址与NULL的区别详解
  • 亲身到店探访北京宇舶官方售后服务中心|全新热线和维修门店地址(2026年7月最新) - 亨得利官方服务中心
  • 武汉中考200分能上什么学校2026年最新推荐 - 武汉中职最新信息发布
  • 国石玉源玉石中心:全方位解析是否值得莅临品鉴 - 互联网科技品牌测评
  • 论文大纲可以免费生成的AI论文写作软件有哪些
  • 2026 年现阶段,金川有实力的q345e精密钢管定做厂家找哪家,揭秘:这个钢管如何颠覆您的材料成本计算? - 品质体验官
  • Windows操作系统安装Gitea教程
  • 如何高效实现抖音视频批量自动化发布:5步完整部署方案
  • [通信与计算]离散时间信号处理:理论、算法与工程实践
  • 2026成都口碑好的民办学校:为明学校与嘉祥成外棠外的综合排名对比 - 阿辰运营笔记
  • 2026 年新消息:得荣可靠的水库鱼塘围栏供货商哪家权威,别再乱搭了!这套围栏如何让你的水库鱼塘收益翻倍? - 实业推荐官【官方】
  • 国内主流翡翠商家实力盘点 客观对比选购参考 - 互联网科技品牌测评
  • 项目组合管理系统推荐:2026年企业级PPM工具实力榜单权威发布 - 运营深度观察
  • Switch2Cursor完整指南:JetBrains与Cursor编辑器高效切换终极方案