LeetCode给出一个 32 位的有符号整数,将这个整数中每位上的数字进行反转。
2019-03-13 19:45
447 查看
给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。
示例 1:
输入: 123
输出: 321
示例 2:
输入: -123
输出: -321
示例 3:
输入: 120
输出: 21
注意:
假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为[MAX_VALUE,MIN_VALUE]。请根据这个假设,如果反转后整数溢出那么就返回 0。
int reverse(int x) { int num[100]; int a=x%10; int b=x/10,i=0; double n=0; while(b) { num[i]=a; //把余数赋值给数组 a=b%10; b=b/10; i++; //数字的位数 } if(!b) { num[i]=a; } for(int j=0;j<i+1;j++) { n=n*10+num[j]; if(n>INT_MAX||n<INT_MIN) return 0; } return (int)n; }
相关文章推荐
- 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。
- ReverseInteger 给出一个整数,反转这个整数
- Java版,如果一个数字能表示为p^q(^表示幂运算)且p为一个素数,q为大于1的正整数就称这个数叫做超级素数幂。现在给出一个正整数n,如果n是一个超级素数幂需要找出对应的p,q
- 一个有n个整数的递增有序数组。对它进行向左或向右循环移动若干次后,要求给出一个代码实现,尽可能快地从这个数组中寻找指定值所在的位置
- java中给出一个不多于5位数的正整数,要求,第一是求出它是第多少位的,逆序打印出各位数字
- 给出一个不多于五位的正整数,要求输出它的位数,每一位数字及逆序
- 用两个线程玩猜数字游戏,第一个线程负责随机给出1~100之间的一个整数,第二个线程负责猜出这个数。要求每当第二个线程给出自己的猜测后,第一个线程都会提示“猜小了”、“猜大了”或“猜对
- 用两个线程玩猜数字游戏,第一个线程负责随机给出1~100之间的一个整数,第二个线程负责猜出这个数。要求每当第二个线程给出自己的猜测后,第一个线程都会提示“猜小了”、“猜大了”或“猜对了”。猜数之前,要
- 给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123
- 对一个有序数组进行折半查找和把一个整数插入这个数组序列,使其仍旧有序
- 将整数转换为相应的一个字符数组。 分析:从个位提取数字,组合字符 符号位的处理 12345=>"12345"
- 输入一个整数,将各位数字反转后输出
- 给一个整形数组,给出一个值,当这个值是数组某些数字的和,求出数组下标的值
- 2. 编写一个Java应用程序,用户从键盘输入一个1~9999之间的数,程序将判断这个数是几位数,并判断这个数是否是回文数。回文数是指将该数含有的数字逆序排列后得到的数和原数相同,例如12121、32
- 十二、函数能够判断一个数字是否是一个素数(并给出一个范围求出这个范围内所有的素数)
- leetcode_9. Palindrome Number 判断一个整数是否是回文串数字
- 字符串包含一个或多个数字,编写函数把数字字符转化为整数并返回这个整数。如果字符串包含任何非数字字符,函数就返回零。
- 给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123
- 任何一个能够被3整除的正整数,取各位数字的立方和,再取各位数字的立方和, 重复有限次,必得到 153 这个数,且 153 再重复也还是153
- 如何取出一个整数的每位数字