Write a function to reverse the bits of a 32-bit integer as efficiently as possible.
Implement reverse_bits(n), where n is an unsigned 32-bit integer. Return the unsigned 32-bit integer whose bits appear in reverse order. The implementation should use bitwise operations and must not convert the number to a string or use built-in reversal utilities.
n, where 0 <= n <= 2^32 - 1def reverse_bits(n):