uint32_t reverseBits(uint32_t n) {
string bits = bitset<32>(n).to_string();
string reversed(bits.rbegin(), bits.rend());
return (uint32_t)stoull(reversed, nullptr, 2);
}
public int reverseBits(int n) {
String bits = String.format("%32s", Integer.toBinaryString(n)).replace(' ', '0');
String reversed = new StringBuilder(bits).reverse().toString();
return (int) Long.parseLong(reversed, 2);
}
def reverse_bits(n):
bits = format(n, '032b')
reversed_bits = bits[::-1]
return int(reversed_bits, 2)
function reverseBits(n: number): number {
const bits = n.toString(2).padStart(32, '0');
const reversed = bits.split('').reverse().join('');
return parseInt(reversed, 2);
}
uint32_t reverseBits(uint32_t n) {
uint32_t result = 0;
for (int i = 0; i < 32; i++) {
result = (result << 1) | (n & 1);
n >>= 1;
}
return result;
}
public int reverseBits(int n) {
int result = 0;
for (int i = 0; i < 32; i++) {
result = (result << 1) | (n & 1);
n >>>= 1;
}
return result;
}
def reverse_bits(n):
result = 0
for i in range(32):
result = (result << 1) | (n & 1)
n >>= 1
return result
function reverseBits(n: number): number {
let result = 0;
for (let i = 0; i < 32; i++) {
result = (result << 1) | (n & 1);
n >>>= 1;
}
return result >>> 0;
}
uint32_t reverseBits(uint32_t n) {
uint32_t result = 0;
for (int i = 0; i < 32; i++) {
if ((n >> i) & 1) result |= 1u << (31 - i);
}
return result;
}
public int reverseBits(int n) {
int result = 0;
for (int i = 0; i < 32; i++) {
if (((n >>> i) & 1) != 0) result |= 1 << (31 - i);
}
return result;
}
def reverse_bits(n):
result = 0
for i in range(32):
if (n >> i) & 1: result |= 1 << (31 - i)
return result
function reverseBits(n: number): number {
let result = 0;
for (let i = 0; i < 32; i++) {
if ((n >>> i) & 1) result |= 1 << (31 - i);
}
return result >>> 0;
}
uint32_t reverseBits(uint32_t n) {
n = (n >> 16) | (n << 16);
n = ((n & 0xff00ff00) >> 8) | ((n & 0x00ff00ff) << 8);
n = ((n & 0xf0f0f0f0) >> 4) | ((n & 0x0f0f0f0f) << 4);
n = ((n & 0xcccccccc) >> 2) | ((n & 0x33333333) << 2);
n = ((n & 0xaaaaaaaa) >> 1) | ((n & 0x55555555) << 1);
return n;
}
public int reverseBits(int n) {
n = (n >>> 16) | (n << 16);
n = ((n & 0xff00ff00) >>> 8) | ((n & 0x00ff00ff) << 8);
n = ((n & 0xf0f0f0f0) >>> 4) | ((n & 0x0f0f0f0f) << 4);
n = ((n & 0xcccccccc) >>> 2) | ((n & 0x33333333) << 2);
n = ((n & 0xaaaaaaaa) >>> 1) | ((n & 0x55555555) << 1);
return n;
}
def reverse_bits(n):
n = ((n >> 16) | (n << 16)) & 0xFFFFFFFF
n = (((n & 0xff00ff00) >> 8) | ((n & 0x00ff00ff) << 8)) & 0xFFFFFFFF
n = (((n & 0xf0f0f0f0) >> 4) | ((n & 0x0f0f0f0f) << 4)) & 0xFFFFFFFF
n = (((n & 0xcccccccc) >> 2) | ((n & 0x33333333) << 2)) & 0xFFFFFFFF
n = (((n & 0xaaaaaaaa) >> 1) | ((n & 0x55555555) << 1)) & 0xFFFFFFFF
return n
function reverseBits(n: number): number {
n = ((n >>> 16) | (n << 16)) >>> 0;
n = (((n & 0xff00ff00) >>> 8) | ((n & 0x00ff00ff) << 8)) >>> 0;
n = (((n & 0xf0f0f0f0) >>> 4) | ((n & 0x0f0f0f0f) << 4)) >>> 0;
n = (((n & 0xcccccccc) >>> 2) | ((n & 0x33333333) << 2)) >>> 0;
n = (((n & 0xaaaaaaaa) >>> 1) | ((n & 0x55555555) << 1)) >>> 0;
return n;
}