「每日LeetCode」2021年1月29日
本文最后更新于:2023年3月19日 晚上
Lt693. 交替位二进制数
693. 交替位二进制数
给定一个正整数,检查它的二进制表示是否总是 0、1 交替出现:换句话说,就是二进制表示中相邻两位的数字永不相同。
示例 1:
1 |
|
示例 2:
1 |
|
示例 3:
1 |
|
示例 4:
1 |
|
示例 5:
1 |
|
提示:
1 <= n <= 2 - 1
思路
字符串
转为二进制字符串以后判断每一位是否与上一位相同
位运算
将原数字和原数字向右移动一位的数进行抑或,如果为交替出现 01 的二进制,此时得到的数应该为 0 开头剩余都为 1 的二进制数。
将得到的数加一可以得到 1 开头剩余都为 0 的二进制数,两个数相与得到的数为 0。
解答
字符串
1 |
|
位运算
1 |
|
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!