leetcode-7. Reverse Integer

xiaoxiao2021-02-28  119

解题思路:先确定输入的符号,然后对其绝对值进行处理。用取余得到输入的最后一位同时构造他的镜像数。唯一需要注意的是int型的最大是2147483647,一旦发现镜像数已经大于214748364,就没必要再乘以10了。

解题代码:

class Solution { public: int reverse(int x) { if(x==0) return x; int sign = x/abs(x); int sum = 0; x *= sign; while(x>0){ sum = 10*sum+x; x /= 10; if(x>0 && sum>(INT_MAX/10)) return 0; } return (sum*sign); } };
转载请注明原文地址: https://www.6miu.com/read-28524.html

最新回复(0)