使用bin函数
class Solution: def reverseBits(self, n: int) -> int: # 将整数 n 转换为二进制字符串,并用 左0 填充至32位 binary_str = bin(n)[2:].zfill(32) # 反转二进制字符串 reversed_str = binary_str[::-1] # 将反转后的二进制字符串转换为整数 reversed_int = int(reversed_str, 2) # 返回反转后的整数 return reversed_int
使用位运算
class Solution: def reverseBits(self, n: int) -> int: # 初始化一个变量来存储反转后的比特位结果 res = 0 # 迭代每个比特位(32次,对于一个32位的整数) for i in range(32): # 将当前结果左移1位,并与n的最低位进行按位或运算 res = (res << 1) | (n & 1) # 将n右移1位,以移动到下一位 n >>= 1 # 返回反转比特位后的最终结果 return res
标签:二进制,res,reversed,leedcode,颠倒,int,str,32 From: https://www.cnblogs.com/yyyjw/p/18056037