数据结构与算法----整数反转

题目

在这里插入图片描述

解题

1.通过数字计算,将需反转的数字result对10取余。
2.将获得的反转值与32位有符号整数的最大值与最小值比较,如果大或小就判断为溢出,返回0.

 public int Reverse(int x) {
        long result =0;
        while (x!=0)
        {
            int temp=x%10;
            result =result*10+temp;
            x=x/10;
        }
        if(result>int.MaxValue||result<int.MinValue)
         result =0;
         return (int)result;
    }
}

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
考虑到易语言很多的命令并不怎么高效,况且还有很多算法和数据结构系统内置没有,作为一位OIer(OI:Olympic in Informatics),于是我就提供一个简易的高效算法/数据结构模块,全部自己写的,函数支持英文命令,代码没有抄袭任何人现成的代码,我只是将在C++算法竞赛中所学到的东西用易语言写出来而已,部分内容参考了一些文献。 举个例子,你们就知道为什么说算法非常重要: 对超大数组进行排序,如果你用传统的选择排序(O(n^2))对一个超大数组进行排序,你恐怕得等几分钟,而采用二分思想的快速排序(最坏情况O(nlogn),最好情况O(n)),最好情况只需要很短时间。量化一下,假如数组内有1024个元素,传统的选择排序本来需要1024*1024=1048576次循环,而使用快速排序,最坏情况只需要1024*log1024=10240次,最好情况只需要1024次,节省了大量时间! 参数传入的下标没有查验是否越界,所以请务必保证传入的参数合法,否则出错! 时间仓促,暂时先写这么多,后续慢慢添加。想要什么的话回帖注明,在我的精力和能力范围限度之内的话我会考虑在后续版本实现。只提供易语言官方支持库中没有的。 当前已支持算法:快速排序、稳定排序、取最大、取最小、向下取整、向上取整、反转字节集、反转文本 当前已支持数据结构:大根堆、小根堆、并查集 当前计划后续版本更新内容:高精度整数类型(开发中)、KMP算法字符串匹配、AC自动机算法字符串匹配 高精度整数类演示: 时间有限,目前只实现了同号的加法 如果你要计算777+555的话,易语言本身的核心支持库已足够,但是如果你要计算77...7(100个7)+55...5(100个5)的话呢?就算长整数也满足不了你!这时候就是高精度整数类上场的时候了。 版本更新日志: -----2016/3/20 1.6----- 1、修复bug(字符串反转、文本反转、其他bug) 2、高精度整数类实现同号加法 -----2016/3/13 1.5----- 1、新增快速排序_优化、插入排序 2、改进快速排序、稳定排序 -----2016/2/23 1.4----- 1、修复排序的一处导致重复比较的bug 2、高精度初步成型,功能暂时未写,暂时不能使用 -----2016/2/6 1.3----- 1、开源 2、添加二叉树(已弃用) -----2016/2/6 1.2----- 1、修复向上取整和向下取整对于负数的运算结果错误的bug -----2016/2/6 1.1----- 1、新增数据结构:并查集、大根堆、小根堆。妈妈再也不用担心我不会写堆排序了~~~ -----2016/2/5 1.0----- 1、新增算法:快速排序、稳定排序、取最大、取最小、向下取整、向上取整、反转字节集、反转文本 2、函数支持英文调用,更方便 hez2010

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值