• 算法,取反向整数,LeetCode(7)


    最近在别人的推荐下刚开始接触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上刷到有意思的算法题贴出来分享。

  • 相关阅读:
    深入剖析Java中的装箱和拆箱
    JDBC(1)
    设计模式
    MySQL学习笔记(3)
    MySQL学习笔记(2)
    MySQL学习笔记(1)
    tomcat 部署项目出现Error thrown in preDeregister method
    JSP页面中的request.getContextPath()出现“ .... .. refers to the missing type String
    myEclipse 导入 jquery包为什么整个项目都会报错
    走楼梯
  • 原文地址:https://www.cnblogs.com/daacheng/p/7289282.html
Copyright © 2020-2023  润新知