LeetCode题解(1122):数组的相对排序(Python)
发布日期:2021-06-29 19:55:27
浏览次数:3
分类:技术文章
本文共 815 字,大约阅读时间需要 2 分钟。
题目:(简单)
解法 | 时间复杂度 | 空间复杂度 | 执行用时 |
---|---|---|---|
Ans 1 (Python) | O ( N l o g N ) O(NlogN) O(NlogN) | O ( N ) O(N) O(N) | 40ms (98.29%) |
Ans 2 (Python) | O ( N + M ) O(N+M) O(N+M) | O ( M ) O(M) O(M) | 44ms (92.79%) |
Ans 3 (Python) |
LeetCode的Python执行用时随缘,只要时间复杂度没有明显差异,执行用时一般都在同一个量级,仅作参考意义。
解法一(自定义排序):
def relativeSortArray(self, arr1: List[int], arr2: List[int]) -> List[int]: def helper(key): if key in arr2: return 0, arr2.index(key) else: return 1, key arr1.sort(key=helper) return arr1
解法二:
def relativeSortArray(self, arr1: List[int], arr2: List[int]) -> List[int]: count = collections.Counter(arr1) ans = [] for n in arr2: if n in count: for _ in range(count[n]): ans.append(n) del count[n] ans += sorted(list(count.elements())) return ans
转载地址:https://dataartist.blog.csdn.net/article/details/107106562 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
路过按个爪印,很不错,赞一个!
[***.219.124.196]2024年04月09日 15时24分24秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
java HelloWorld
2019-04-30
antD Pro vue 的中后台解决方案 - 项目搭建 1
2019-04-30
antD Pro vue 的中后台解决方案 - 路由 2
2019-04-30
dom - altkey
2019-04-30
dom - keyCode
2019-04-30
dom - js事件绑定快捷键
2019-04-30
dom - 查找元素之8大方法
2019-04-30
dom - 创建节点
2019-04-30
uni-app 环境搭建
2019-04-30
uni-app 浏览器测试
2019-04-30
dom - 12 种 node 类型
2019-04-30
Dart - 环境配置
2019-04-30
Dart - comment 注释
2019-04-30
Dart - variate 变量
2019-04-30
Dart - default 默认值
2019-04-30
Dart - default&const
2019-04-30
Dart - if else
2019-04-30
Dart - 循环控制
2019-04-30
Dart - switch
2019-04-30
Dart - break 和 continue
2019-04-30