Given a signed 32-bit integer x, return x with its digits reversed. If reversing x causes the value to go outside the signed 32-bit integer range [-2^31, 2^31 - 1], return 0.
Assume the environment does not allow you to store 64-bit integers (signed or unsigned).
Input: x = 123 Output: 321 Explanation: Reversing the digits of 123 gives 321, which fits in a 32-bit integer.
Input: x = -123 Output: -321 Explanation: Reversing -123 gives -321. The sign is preserved.
Input: x = 120 Output: 21 Explanation: Reversing 120 gives 021, which is 21 (leading zeros are dropped).
-2^31 <= x <= 2^31 - 1x = 123