693. Binary Number with Alternating Bits
Given a positive integer, check whether it has alternating bits: namely, if two adjacent bits will always have different values.
Example 1: Input: 5 Output: True Explanation: The binary representation of 5 is: 101 Example 2: Input: 7 Output: False Explanation: The binary representation of 7 is: 111. Example 3: Input: 11 Output: False Explanation: The binary representation of 11 is: 1011. Example 4: Input: 10 Output: True Explanation: The binary representation of 10 is: 1010.
思路:转为字符串,两两比较,相等返回False,遍历完返回True
代码:python3
class Solution:
def hasAlternatingBits(self, n: int) -> bool:
s=str(bin(n)[2:])
for i in range(1,len(s)):
if s[i]==s[i-1]:
return False
return True