LeetCode题解(1005):K次取反后最大化的数组合(Python)
发布日期:2021-06-29 19:55:08
浏览次数:4
分类:技术文章
本文共 724 字,大约阅读时间需要 2 分钟。
题目:(简单)
解法 | 时间复杂度 | 空间复杂度 | 执行用时 |
---|---|---|---|
Ans 1 (Python) | O ( N l o g N + K ) O(NlogN+K) O(NlogN+K) | O ( N ) O(N) O(N) | 60ms (86.21%) |
Ans 2 (Python) | |||
Ans 3 (Python) |
LeetCode的Python执行用时随缘,只要时间复杂度没有明显差异,执行用时一般都在同一个量级,仅作参考意义。
解法一:
def largestSumAfterKNegations(self, A: List[int], K: int) -> int: number = [] minus = [] for a in A: if a >= 0: number.append(a) else: minus.append(a) minimum = min(number) minus.sort(reverse=True) out = 1 for _ in range(K): if len(minus) > 0: n = -minus.pop(-1) if n < minimum: minimum = n number.append(n) else: out *= -1 return sum(number) + sum(minus) - minimum + out * minimum
转载地址:https://dataartist.blog.csdn.net/article/details/107098242 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
表示我来过!
[***.240.166.169]2024年04月17日 01时04分54秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
深度学习读书笔记之AE(自动编码AutoEncoder)
2019-04-30
深度学习读书笔记之RBM
2019-04-30
深度学习word2vec笔记之基础篇
2019-04-30
android精确绘制文字位置的方法
2019-04-30
Android中UI线程与后台线程交互设计的5种方法
2019-04-30
[Android]调用字符串资源的几种方法
2019-04-30
Android更新UI的两种方法——handler与runOnUiThread()
2019-04-30
Java中new Thread的弊端及Java四种线程池的使用
2019-04-30
android线程与UI消息传递
2019-04-30
java枚举定义
2019-04-30
[翻译][Java]ExecutorService的正确关闭方法
2019-04-30
QT父子窗口事件传递与事件过滤器
2019-04-30
Qt到Cortex-A8的移植
2019-04-30
Qt4.7.3交叉编译移植
2019-04-30
luvcview摄像头程序到Cortex A8的安装移植
2019-04-30
Android开发书籍书籍介绍:
2019-04-30
QT 的信号与槽机制介绍
2019-04-30
Qt信号槽机制与Q_OBJECT
2019-04-30
Q_OBJECT信号槽与继承关系
2019-04-30
android定时器、消息任务与问题解决
2019-04-30