LeetCode题解(1018):可被5整除的二进制前缀(Python)
发布日期:2021-06-29 19:55:12
浏览次数:4
分类:技术文章
本文共 587 字,大约阅读时间需要 1 分钟。
题目:(简单)
解法 | 时间复杂度 | 空间复杂度 | 执行用时 |
---|---|---|---|
Ans 1 (Python) | O ( N ) O(N) O(N) | O ( N ) O(N) O(N) | 384ms (59.25%) |
Ans 2 (Python) | O ( N ) O(N) O(N) | O ( N ) O(N) O(N) | 132ms (90.16%) |
Ans 3 (Python) |
LeetCode的Python执行用时随缘,只要时间复杂度没有明显差异,执行用时一般都在同一个量级,仅作参考意义。
解法一(朴素算法):
def prefixesDivBy5(self, A: List[int]) -> List[bool]: val = 0 ans = [] for a in A: val = (val << 1) ^ a ans.append(val % 5 == 0) return ans
解法二(避免大数求余):
def prefixesDivBy5(self, A: List[int]) -> List[bool]: val = 0 ans = [] for a in A: val = (val << 1 ^ a) % 5 ans.append(val== 0) return ans
转载地址:https://dataartist.blog.csdn.net/article/details/107099503 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
留言是一种美德,欢迎回访!
[***.207.175.100]2024年04月03日 16时16分56秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
chattr和lsattr命令
2019-04-30
数据块(Data Block)原理深入剖析
2019-04-30
Oracle体系结构
2019-04-30
Database、User、Schema、Tables、Col、Row等之间的关系
2019-04-30
深入剖析oracle备份与恢复原理
2019-04-30
GIS数据库ORACLE的某些参数设置
2019-04-30
多元化控制文件和重做日志文件
2019-04-30
信令网
2019-04-30
1号信令、7号信令和PRI信令
2019-04-30
信令点编码
2019-04-30
E1通信的基础知识
2019-04-30
中继卡与语音卡
2019-04-30
普通固定电话机使用与原理简介
2019-04-30
电脑声卡的工作原理
2019-04-30
PBX
2019-04-30
G.703 V.35接口
2019-04-30
G.703 V.35接口
2019-04-30
协议转换器
2019-04-30
协议转换器与网桥区别
2019-04-30
中继器,集线器,交换机,网桥,网关,路由器的功能作用,区别到底是什么
2019-04-30