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

Leetcode 3644. Maximum K to Sort a Permutation

  • Leetcode 3644. Maximum K to Sort a Permutation
    • 1. 解题思路
    • 2. 代码实现
  • 题目链接:3644. Maximum K to Sort a Permutation

1. 解题思路

这一题核心在于说想明白要如何进行排序,问题的最终目标是将整个数组变得有序,因此原始数组当中所有位置与最终位置不同的数都需要被重新排序,也就是说这其中的任意两个数的位和的结果均至少要大于等于kkk,否则就不存在一种交换方式能够交换这两个数。

因此,我们将所有位置不对的数计算一下位和的结果,这个值就会是kkk能够取到的最大值。然后我们就只需要证明这个kkk确实可以将所有的数置换为有序数组。这其实也很直接,我们将kkk单取出来,然后与每一个数进行一下交换,将其换到对应的位置即可。

综上,证明完毕,我们将所有的位置不对的数计算一下位和的结果,就是最终答案kkk

2. 代码实现

给出python代码实现如下:

class Solution:def sortPermutation(self, nums: List[int]) -> int:snums = sorted(nums)ans = -1for x, y in zip(nums, snums):if x == y:continueif ans == -1:ans = xelse:ans = ans & xreturn ans if ans != -1 else 0

提交代码评测得到:耗时44ms,占用内存29.60MB。

http://www.lryc.cn/news/616063.html

相关文章:

  • 数学建模——回归分析
  • 香橙派 RK3588 部署 DeepSeek
  • 【2025CVPR-图象分类方向】ProAPO:视觉分类的渐进式自动提示优化
  • 【Linux】通俗易懂讲解-正则表达式
  • WAIC2025逛展分享·AI鉴伪技术洞察“看不见”的伪造痕迹
  • Jetpack系列教程(二):Hilt——让依赖注入像吃蛋糕一样简单
  • JavaWeb(苍穹外卖)--学习笔记17(Apache Echarts)
  • 【鸿蒙/OpenHarmony/NDK】什么是NDK? 为啥要用NDK?
  • 【图像算法 - 11】基于深度学习 YOLO 与 ByteTrack 的目标检测与多目标跟踪系统(系统设计 + 算法实现 + 代码详解 + 扩展调优)
  • 机器学习——DBSCAN 聚类算法 + 标准化
  • Python 实例属性和类属性
  • 安卓录音方法
  • Java 后端性能优化实战:从 SQL 到 JVM 调优
  • 深入解析React Diff 算法
  • Word XML 批注范围克隆处理器
  • React:useEffect 与副作用
  • MyBatis的xml中字符串类型判空与非字符串类型判空处理方式
  • 秋招春招实习百度笔试百度管培生笔试题库百度非技术岗笔试|笔试解析和攻略|题库分享
  • wordpress语言包制作工具
  • python正则表达式里面有特殊符号如何处理
  • 亚麻云之静态资源管家——S3存储服务实战
  • Day41--动态规划--121. 买卖股票的最佳时机,122. 买卖股票的最佳时机 II,123. 买卖股票的最佳时机 III
  • LeetCode 组合总数
  • AI质检数据准备利器:基于Qt/QML 5.14的图像批量裁剪工具开发实战
  • Python 2025:最新技术趋势与展望
  • Text2SQL 自助式数据报表开发(Chat BI)
  • 解决 .NET Core 6.0 + PostgreSQL 网站首次连接缓慢问题
  • 嵌入式软件分层架构的设计原理与实践验证(有限状态机理解及结构体封装理解)
  • spring-ai整合PGVector实现RAG
  • WinForm之TreeView控件