All Downloads are FREE. Search and download functionalities are using the official Maven repository.

g0001_0100.s0007_reverse_integer.Solution Maven / Gradle / Ivy

There is a newer version: 1.38
Show newest version
package g0001_0100.s0007_reverse_integer;

// #Medium #Top_Interview_Questions #Math #Udemy_Integers
// #2023_08_09_Time_1_ms_(99.69%)_Space_39.5_MB_(82.15%)

/**
 * 7 - Reverse Integer\.
 *
 * Medium
 *
 * 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 [-231, 231 - 1], then return `0`.
 *
 * **Assume the environment does not allow you to store 64-bit integers (signed or unsigned).**
 *
 * **Example 1:**
 *
 * **Input:** x = 123
 *
 * **Output:** 321 
 *
 * **Example 2:**
 *
 * **Input:** x = -123
 *
 * **Output:** -321 
 *
 * **Example 3:**
 *
 * **Input:** x = 120
 *
 * **Output:** 21 
 *
 * **Example 4:**
 *
 * **Input:** x = 0
 *
 * **Output:** 0 
 *
 * **Constraints:**
 *
 * *   -231 <= x <= 231 - 1
**/
public class Solution {
    public int reverse(int x) {
        long rev = 0;
        while (x != 0) {
            rev = (rev * 10) + (x % 10);
            x /= 10;
        }
        if (rev > Integer.MAX_VALUE || rev < Integer.MIN_VALUE) {
            return 0;
        }
        return (int) rev;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy