LeetCode题解(1509):三次操作后最大值与最小值的最小差(Python)
发布日期:2021-06-29 20:06:58
浏览次数:3
分类:技术文章
本文共 816 字,大约阅读时间需要 2 分钟。
题目:(中等)
标签:数组、排序
解法 | 时间复杂度 | 空间复杂度 | 执行用时 |
---|---|---|---|
Ans 1 (Python) | O ( N ) O(N) O(N) | O ( 1 ) O(1) O(1) | 80ms (99%) |
Ans 2 (Python) | |||
Ans 3 (Python) |
解法一:
class Solution: def minDifference(self, nums: List[int]) -> int: # 处理长度小于4的情况 if len(nums) <= 4: return 0 # 4个最小值和4个最大值 min_val = list(sorted(nums[:4])) # 从小到大 max_val = min_val[::-1] # 从大到小 # 遍历数组寻找4个最小值和4个最大值 for i in range(4, len(nums)): num = nums[i] if num < min_val[-1]: min_val.pop() min_val.append(num) min_val.sort() if num > max_val[-1]: max_val.pop() max_val.append(num) max_val.sort(reverse=True) # 处理4种可能的删除方法 return min(max_val[i] - min_val[3 - i] for i in range(4))
转载地址:https://dataartist.blog.csdn.net/article/details/109515325 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
不错!
[***.144.177.141]2024年04月12日 01时03分09秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
分布式系统 Zookeeper
2019-04-30
分布式系统:Lec 10 分布式事务
2019-04-30
分布式系统:FaRM
2019-04-30
分布式系统:ZooKeeper 基本用例
2019-04-30
分布式系统:Spark
2019-04-30
分布式系统:Naiad
2019-04-30
分布式系统:参数服务器
2019-04-30
分布式系统:FastRPC eRPC
2019-04-30
奇异值分解简要笔记
2019-04-30
6.824(2020年) Lab1 MapReduce
2019-04-30
6.824 Amazon Aurora云数据库
2019-04-30
6.824 2020 Lecture 13: Spanner
2019-04-30
数据库恢复 (ARIES)
2019-04-30
比特币Bitcoin论文笔记
2019-04-30
Apache Flink: 在同一个引擎做流式和批处理
2019-04-30
CMU15-445 PROJECT 4 - LOGGING & RECOVERY
2019-04-30
Amazon Dynamo论文以及与Cassandra对比
2019-04-30
常见26种NLP任务的练手项目(收藏)
2019-04-30