題目:
解題思路:
取末位數:用 pop = x % 10 取出最後一位。
去掉末位:x = x / 10。
拼接到結果:rev = rev * 10 + pop。
檢查溢位:在更新 rev 前,判斷 rev 是否會超過範圍。
32-bit 最大值:2147483647 (即 Integer.MAX_VALUE)
32-bit 最小值:-2147483648 (即 Integer.MIN_VALUE)
判斷條件:
如果 rev > Integer.MAX_VALUE/10 或者 rev == Integer.MAX_VALUE/10 && pop > 7 → 溢位。
如果 rev < Integer.MIN_VALUE/10 或者 rev == Integer.MIN_VALUE/10 && pop < -8 → 溢位。