leetcode reverse bits python
Reverse Bits
Reverse bits of a given 32 bits unsigned integer.
For example, given input 43261596 (represented in binary as 00000010100101000001111010011100), return 964176192 (represented in binary as00111001011110000010100101000000).
Follow up:
If this function is called many times, how would you optimize it?
python代码:
from string import atoi
class Solution:
# @param n, an integer
# @return an integer
def reverseBits(self, n):
n_str=bin(n)[2:].zfill(32)[-1::-1] #利用bin内建函数将n转换为二进制字符串,利用切片删掉前缀0b,并将其扩充至32位,然后在反转
n_int=string.atoi(n_str,2) #将翻转后的二进制字符串转换为整形
return n_int