LeetCode题解(0201):数字范围按位与(Python)
发布日期:2021-06-29 20:16:06 浏览次数:2 分类:技术文章

本文共 444 字,大约阅读时间需要 1 分钟。

题目:(中等)

标签:位运算、数学

解法 时间复杂度 空间复杂度 执行用时
Ans 1 (Python) O ( l o g N ) O(logN) O(logN) O ( 1 ) O(1) O(1) 76ms (32.26%)
Ans 2 (Python)
Ans 3 (Python)

解法一:

class Solution:    def rangeBitwiseAnd(self, m: int, n: int) -> int:        ans = 0        for i in range(n.bit_length()):            bit1 = 1 << i            bit2 = bit1 << 1            if n - m < bit1 and n % bit2 >= bit1 and m % bit2 >= bit1:                ans += n & bit1        return ans

转载地址:https://dataartist.blog.csdn.net/article/details/112610211 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:LeetCode题解(0208):实现Trie(前缀树)(Python)
下一篇:LeetCode题解(0179):最大数(Python)

发表评论

最新留言

表示我来过!
[***.240.166.169]2024年04月04日 05时21分20秒