算法,取反向整数,LeetCode

Posted 哒哒哒大大诚

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了算法,取反向整数,LeetCode相关的知识,希望对你有一定的参考价值。

最近在别人的推荐下刚开始接触LeetCode,一个非常不错的在线编程刷题网站,java小白目前还在刷简单的算法题,不过挺有意思的。昨天碰到一个反向整数算法题,想了好久没写出答案,在网上搜了答案,贴在这里,我是觉得算法题跟做数学很相似,苦苦解不开一个题可能是我们的思维方式出现了问题,通过看别人写的代码,仔细分析别人的思维逻辑,反思自己与别人解决问题逻辑上的差异,为什么别人可以想到这种解法,进而来提升自己的算法能力,越来越觉得编程是件有趣的事了。

题目如下:输入一个int 类型的整数,结果输出一个反向整数。

  例如 输入1234,运行代码后得到结果4321.

    或者输入  -1234, 输出-4321.

    同时还要考虑到假定输入为32位有符号整数。 当反转的整数溢出时,你的函数应该返回0。

    public class Solution {
      public int reverse(int x) {
        int y=0;
        int n;    //接收余数
        while( x != 0){
        n = x%10;
        if (y > Integer.MAX_VALUE/10 || y < Integer.MIN_VALUE/10){    //如果反转后整数溢出,return 0.
          return 0;
        }
        y = y*10 + n;
        x /= 10;
        }
        return y;
      }
    }

希望对看到的同为java小白的朋友能有帮助,以后我还会把在LeetCode上刷到有意思的算法题贴出来分享。

 















以上是关于算法,取反向整数,LeetCode的主要内容,如果未能解决你的问题,请参考以下文章

LeetCodeLeetCode之跳跃游戏Ⅱ——暴力解法+动态规划+贪婪算法

LeetCodeLeetCode之乘积最大子数组——枚举+动态规划+Kadane算法

LeetCodeLeetCode之乘积为正数的最长子数组长度——暴力枚举+动态规划+Kadane算法

LeetCodeLeetCode之乘积为正数的最长子数组长度——暴力枚举+动态规划+Kadane算法

LeetCodeLeetCode之跳跃游戏——动态规划+贪心算法

LeetCodeLeetCode之删除并获得点数——动态规划排序+动态规划