本文共 538 字,大约阅读时间需要 1 分钟。
一个整数(int 32)中的数字进行颠倒,当颠倒后的整数溢出时,返回0。例如-98,返回-89。
class solution{ public: int Reverse(int x){ if (x == 0) { return 0; } if (x == INT_MIN) { return 0; } int num = x > 0 ? x : -x; //小心坑注意最小值 int sum = 0; long tmp; while (num != 0) { tmp = (long)sum *10 + num % 10;//溢出解决 if (tmp > INT_MAX) return 0; sum = sum * 10 + num % 10; num /= 10; } return x > 0 ? sum : -sum; }};
转载地址:http://mjtsi.baihongyu.com/