LeetCode题解(1002):查找常用字符(Python)
发布日期:2021-06-29 19:55:07
浏览次数:4
分类:技术文章
本文共 876 字,大约阅读时间需要 2 分钟。
题目:(简单)
解法 | 时间复杂度 | 空间复杂度 | 执行用时 |
---|---|---|---|
Ans 1 (Python) | O ( N × K ) O(N×K) O(N×K) : K为字符串长度 | O ( K ) O(K) O(K) | 56ms (76.09%) |
Ans 2 (Python) | O ( N × K ) O(N×K) O(N×K) : K为字符串长度 | O ( K ) O(K) O(K) | 56ms (76.09%) |
Ans 3 (Python) |
LeetCode的Python执行用时随缘,只要时间复杂度没有明显差异,执行用时一般都在同一个量级,仅作参考意义。
解法一(哈希表):
def commonChars(self, A: List[str]) -> List[str]: hashmap = { } for c in A[0]: if c not in hashmap: hashmap[c] = 1 else: hashmap[c] += 1 for a in A[1:]: for k in hashmap: hashmap[k] = min(hashmap[k], a.count(k)) ans = [] for k, v in hashmap.items(): while v > 0: ans.append(k) v -= 1 return ans
解法二(使用collections.Counter类):
def commonChars(self, A: List[str]) -> List[str]: ans = collections.Counter(A[0]) for a in A[1:]: ans &= collections.Counter(a) return list(ans.elements())
转载地址:https://dataartist.blog.csdn.net/article/details/107098083 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
路过,博主的博客真漂亮。。
[***.116.15.85]2024年04月22日 22时26分02秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
C#中使用TransactionScope类(分布式事务) 和 锁
2019-04-30
SecurityProtocolType
2019-04-30
Consul、Ocelot、Docker
2019-04-30
消息队列
2019-04-30
BPM/OA/审批流/工作流
2019-04-30
艾维利时间管理法
2019-04-30
我的sql自定义分页
2019-04-30
阿里入职培训,针不搓
2019-04-30
我的游标分页
2019-04-30
js比较两个String字符串找出不同,并将不同处高亮显示
2019-04-30
进程以下的那些事儿
2019-04-30
宏内核与微内核
2019-04-30
python异步函数中调用同步函数
2019-04-30
Python异步库里面的队列
2019-04-30
xv6的sleep和wakeup
2019-04-30
分布式系统 MapReduce
2019-04-30
分布式系统:RPC
2019-04-30
分布式系统:GFS
2019-04-30
分布式系统:Primary Backup - 故障容忍的虚拟机
2019-04-30