LeetCode之7 --- Reverse Integer

mac2022-06-30  72

题目:

   Reverse digits of an integer.    Example1:  x = 123, return 321    Example2:  x = -123, return -321

题目大意:

逆置一个整数,如:123--->321   -123--->-321

思路:

  这道题比较简单,和回文数的解法一致,只不过比回文数少了一个判断而已。具体思路是循环执行result = result * 10 + x % 10, x /= 10;但是需要注意判断边界条件:要考虑逆置完的数是否溢出,如果溢出则返回0。在这里使用long或者long long来存储result,如果result大于INT_MAX或者小于INT_MIN则返回0

代码:

class Solution { public: int reverse(int x) { long result = 0; while (x) { result = result * 10 + (x % 10); x /= 10; } if (result > INT_MAX || result < INT_MIN) { return 0; } return result; } };

转载于:https://www.cnblogs.com/jungzhang/p/5547322.html

最新回复(0)