Python中的反向整数

假设我们有一个32位带符号整数。我们必须取数字并反转数字。因此,如果数字是425,则输出将是524。我们还必须记住数字是带符号的,因此可能会有一些负数。因此,如果数字是–425,则它将是–524。

这里我们有一些假设。我们假设我们在32位带符号整数的域中使用。因此范围是[-232到232 – 1]。因此,如果数字不在范围内,则该函数将返回0。

为了解决这个问题,我们将使用Python代码。首先,我们将给定的整数转换为字符串。因此,如果字符串中的第一个字符为“-”,则数字为负数,因此从索引1到索引长度– 1反向。最后将它们转换为整数,然后返回它,对于正数,只需将字符串反向并返回之前将其设为整数。在每种情况下,我们都会检查数字是否在32位整数范围内。如果超出范围,则只需返回0。

让我们看一下实现以获得更好的理解

示例

class Solution(object):
   def reverse(self, x):
      """
      :type x: int
      :rtype: int
      """
      x = str(x)
      if x[0] == '-':
         a = int('-' + x[-1:0:-1])
         if a >= -2147483648 and a<= 2147483647:
            return a
         else:
            return 0
         else:
            a = int(x[::-1])
            if a >= -2147483648 and a<= 2147483647:
               return a
            else:
               return 0
ob1 = Solution()print(ob1.reverse(-425))

输入项

print(ob1.reverse(-425))

输出结果

-524