js 整数反转 算法 面试题

sxysoft_csdn 2021-03-23 08:57:01
给你-个32位的有符号整数x , 返回将x中的数字部分反转后的结果。

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

假设环境不允许存储64位整数(有符号或无符号)。
...全文
484 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
简_洋 2021-04-02
  • 打赏
  • 举报
回复
就20分,打广告也不太行啊。
sxysoft_csdn 2021-03-26
  • 打赏
  • 举报
回复
我来冒个泡泡
一品梅 2021-03-23
  • 打赏
  • 举报
回复
泡泡鱼_ 2021-03-23
  • 打赏
  • 举报
回复
引用 1 楼 一品梅 的回复:
这些实际用途不大,以后往这方面努力!
楼主是来打广告的,不用回复他……[捂脸]
sxysoft_csdn 2021-03-23
  • 打赏
  • 举报
回复
js 实现代码如下:
<!DOCTYPE html>
<html>
<head>
 <meta charset=utf-8 />
 <title>js 整数反转 算法 面试题 xinbiancheng.cn</title>
</head>
<body>
</body>
<script type="text/javascript">
 function reverse(x) {
  let INT_MAX=2147483648; //2的31次方
  let INT_MIN=-2147483647 //-2的31次方
  let rev = 0;
  while (x != 0) {
   let remainder  = x % 10;
   x = parseInt(x/10);
   if (rev > INT_MAX/10 || (rev == INT_MAX / 10 && remainder  > 7))
    return 0;
   if (rev < INT_MIN/10 || (rev == INT_MIN / 10 && remainder  < -8))
    return 0;
   rev = rev * 10 + remainder;
  }
  return rev;
 }
 console.log(reverse(123));
 console.log(reverse(-123));
 console.log(reverse(120));
 console.log(reverse(0));
 console.log(reverse(2147483648));
</script>
</html>
更多此题的解法请参考: js 整数反转 算法 面试题
一品梅 2021-03-23
  • 打赏
  • 举报
回复
这些实际用途不大,以后往这方面努力!
sxysoft_csdn 2021-03-23
  • 打赏
  • 举报
回复
9:00给大家算法代码。

87,923

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧