整数翻转的小问题

老规矩,上题目。题目来自力扣

给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。

如果反转后整数超过 32 位的有符号整数的范围 [−231,  231 − 1] ,就返回 0。

假设环境不允许存储 64 位整数(有符号或无符号)。
 

示例 1:

输入:x = 123
输出:321
示例 2:

输入:x = -123
输出:-321
示例 3:

输入:x = 120
输出:21
示例 4:

输入:x = 0
输出:0

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/reverse-integer
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

代码如下

var reverse = function (x) {
  let x2='';//定义一个字符串,用来存储最终的结果
  let x1 = x.toString()//把数字转换成字符串
  for (i in x1) {//利用for in 对字符串进行遍历,i拿到的是字符串的下标值
      x2 += x1[x1.length - 1 - i]//倒序把原字符串的值依次给新的字符串
  }
 x2= parseInt(x2)//因为原来的数据有负数,所以先把数据转换成纯数字,再处理符号的问题
  if (x1[0] == '-') {//判断,如果数字是负数的情况,给新的数据添加负号
    x2 *= -1;
  }

  if (x2 <= Math.pow(-2,31)|| x2 >= Math.pow(2,31)-1) {//判断数字溢出的情况,直接返回0
    return 0
  }
  return x2//最终返回的值
};
console.log(reverse(123));

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用字符串的切片操作来实现正整数反转。 示例代码: ```python num = 12345 reverse_num = int(str(num)[::-1]) print(reverse_num) ``` 输出: ``` 54321 ``` 解释: 首先将整数 `num` 转换为字符串,然后使用字符串的切片操作 `[::1]` 反转字符串,最后再将反转后的字符串转换为整数。 ### 回答2: 正整数反序问题是指将一个正整数按照个位、十位、百位等顺序逆序排列。例如,对于正整数12345,逆序后为54321。要解决这个问题,我们可以使用Python语言编写以下代码: ```python def reverse_number(n): reverse = 0 while n > 0: digit = n % 10 reverse = reverse * 10 + digit n = n // 10 return reverse number = int(input("请输入一个正整数:")) reversed_number = reverse_number(number) print("逆序后的结果为:", reversed_number) ``` 在这段代码中,我们定义了一个函数`reverse_number`,该函数接收一个正整数`n`作为参数,用来实现正整数的反序操作。在函数体中,我们使用循环来依次获取`n`的个位、十位等数字,并通过乘以10和加上下一个数字的方式逆序构造一个新的整数`reverse`。最后,返回逆序后的结果。 接下来,我们通过`input`函数获取用户输入的一个正整数,并将其存储在变量`number`中。然后,调用`reverse_number`函数,并将`number`作为参数传入,得到逆序后的结果,并存储在变量`reversed_number`中。最后,通过`print`函数输出逆序后的结果。 通过以上代码,我们可以实现对正整数的反序操作,并得到准确的结果。 ### 回答3: 正整数反序问题是一个将给定的正整数按照反序输出的问题。在Python中,可以使用字符串切片的方法来实现该问题。 具体的解题思路如下: 1. 将给定的正整数转换为字符串类型。 例如,如果给定的正整数为12345,可以使用str()函数将其转换为字符串"12345"。 2. 使用字符串切片的方式将字符串翻转。 切片的语法格式为str[start:stop:step],其中start表示起始位置,默认为0;stop表示结束位置,默认为字符串的长度;step表示步长,默认为1。当step为-1时,表示从字符串的最后一个字符开始逆序切片。 例如,对于字符串"12345",可以使用切片操作[::-1]将其翻转为"54321"。 3. 将翻转后的字符串转换为整数类型,并输出。 可以使用int()函数将字符串"54321"转换为整数54321,并通过print()函数输出结果。 下面是一个具体的示例代码: ```python num = 12345 # 给定的正整数 num_str = str(num) # 将正整数转换为字符串 reverse_str = num_str[::-1] # 翻转字符串 reverse_num = int(reverse_str) # 将翻转后的字符串转换为整数 print(reverse_num) # 输出翻转后的正整数 ``` 以上代码的输出结果为54321,即给定正整数12345的反序数字。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值