交替位二进制数
发表于|更新于|作业练习
|浏览量:
交替位二进制数
🎯 问题描述(来源于LeetCode)
1 | 给定一个正整数,检查它的二进制表示是否总是 0、1 交替出现:换句话说,就是二进制表示中相邻两位的数字永不相同。 |
💻 代码实现
1 | class Solution: |
📊 性能分析
提交结果
- 运行时间:0ms击败100.00 %
- 内存消耗:17.66MB击败14.25 %
复杂度验证
- 时间复杂度:O(1)
- 空间复杂度:O(1)
文章作者: zhaoyuan
文章链接: https://id-zy.github.io/2025/12/01/%E4%BA%A4%E6%9B%BF%E4%BD%8D%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%95%B0/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 笺札!
相关推荐

2025-12-02
Excel 表列名称
Excel 表列名称 🎯 问题描述(来源于LeetCode) 12345678910给你一个整数 columnNumber,返回它在 Excel 表中相对应的列名称。例如:A -> 1B -> 2C -> 3...Z -> 26AA -> 27AB -> 28 ... 💻 代码实现 12345678910class Solution: def convertToTitle(self, columnNumber: int) -> str: n=columnNumber s='' while (n > 0): m = n % 26 if (m == 0): m = 26 s = chr(m + 64) + s n = (n - m) // 26 return s 📊 性能分析 提交结果 运行时间:0ms击败100.00% 内存消耗:17.38MB击败93.22...

2025-11-30
Pow(x, n)
Pow(x, n) 🎯 问题描述(来源于LeetCode) 1实现pow(_x_, _n_) ,即计算x的整n次幂函数(即,x^n )。 💻 代码实现 暴力破解快速幂优化算法12345678910class Solution: def myPow(self, x: float, n: int) -> float: ans=1.0 i=0 if n<0: x=1/x n=-n for i in range(n): ans*=x return ans使用快速幂降低其时间复杂度 12345678910111213class Solution: def myPow(self, x: float, n: int) -> float: ans=1.0 i=0 if n<0: x=1/x n=-n ...

2025-12-02
Excel 表列序号
Excel 表列序号 🎯 问题描述(来源于LeetCode) 12345678910给你一个字符串columnTitle,表示 Excel 表格中的列名称。返回 _该列名称对应的列序号_ 。例如:A -> 1B -> 2C -> 3...Z -> 26AA -> 27AB -> 28 ... 💻 代码实现 123456789101112131415class Solution: def titleToNumber(self, columnTitle: str) -> int: s=columnTitle a = list(map(lambda x: chr(x), range(ord('A'), ord('Z') + 1))) l = len(s) sum = 0 if l > 1: for i in range(l - 1): ...

2025-11-29
上升的温度
上升的温度 问题描述(来源于LeetCode) 表: Weather ±--------------±--------+ | Column Name | Type | ±--------------±--------+ | id | int | | recordDate | date | | temperature | int | ±--------------±--------+ id 是该表具有唯一值的列。 没有具有相同 recordDate 的不同行。 该表包含特定日期的温度信息 编写解决方案,找出与之前(昨天的)日期相比温度更高的所有日期的 id 。 返回结果 无顺序要求 。 代码实现 123456# Write your MySQL query statement belowSELECT t2.id AS IdFROM Weather t1CROSS JOIN Weather t2 ON DATEDIFF(t1.recordDate,t2.recordDate)=-1WHERE t2.Temperat...

2025-12-05
三个数的最大乘积
三个数的最大乘积 🎯 问题描述(来源于LeetCode) 给你一个整型数组 nums ,在数组中找出由三个数组成的最大乘积,并输出这个乘积。 💻 代码实现 目标是找到数组中三个数的最大乘积。有两种可能的情况: 三个最大的正数相乘。 两个最小的负数(如果存在)和一个最大的正数相乘。 123456789101112131415161718class Solution: def maximumProduct(self, nums: List[int]) -> int: x1=nums.copy() x2=nums max1 =max(x1) x1.remove(max1) max2=max(x1) x1.remove(max2) max3=max(x1) n1=max1*max2*max3 max4=min(x2) x2.remove(max4) max5=min(x2) n2=max1...

2025-12-01
可怜的小猪
可怜的小猪 🎯 问题描述(来源于LeetCode) 123456789有 buckets桶液体,其中 正好有一桶 含有毒药,其余装的都是水。它们从外观看起来都一样。为了弄清楚哪只水桶含有毒药,你可以喂一些猪喝,通过观察猪是否会死进行判断。不幸的是,你有minutesToTest分钟时间来确定哪桶液体是有毒的。喂猪的规则如下:1. 选择若干活猪进行喂养2. 可以允许小猪同时饮用任意数量的桶中的水,并且该过程不需要时间。3. 小猪喝完水后,必须有minutesToDie分钟的冷却时间。在这段时间里,你只能观察,而不允许继续喂猪。4. 过了minutesToDie分钟后,所有喝到毒药的猪都会死去,其他所有猪都会活下来。5. 重复这一过程,直到时间用完。给你桶的数目buckets,minutesToDie` 和 minutesToTest,返回在规定时间内判断哪个桶有毒所需的最小猪数_ 。 灵感思路 我原本的想法采取群组测试的思想直接求取编码位数,但想不到如何引进最大测试次数与其的关系。通过阅览宫水三叶大佬的题解中进制猜想 & 香农熵验证得以知道测试次数与编码进制有关,原...
公告
This is my Blog




