这个题其实逻辑不难,可是最坑爹的问题是如何判断整型数的溢出!!!code
class Solution { public: int reverse(int x) { if (INT_MIN == x) return 0; if (x < 0) return -reverse(-x); int result = 0; while (x > 0){ int a = x % 10; x = x / 10; if ((INT_MAX - a) / 10 < result) //若是result*10+a还大于INT_MAX,那就是要溢出了 return 0; result = result * 10 + a; } return result; } };