赞
踩
输入: 123
输出: 321
输入: -123
输出: -321
输入: 120
输出: 21
1、遍历数组取出每一位即可
这里面有一个经常会用的思想:取出一个数字的每一位
举个栗子: 取出int x = 12345的每一位
代码展示:取出一个数字的每一位
int n = 0;
StringBulider s = new StringBulider();
while(x != 0) {
n = n*10 + x%10;
s.append(n);
x /= 10;
}
2、这里有一个细节:传递过来的参数 x 是 int 类型,最后返回的数字是int类型,所以需要将反转后的数字应该定义成 long,再转换为int类型返回
3、如果(int)n == n,就代表反转后的数字在 int 范围内,可以返回,否则就返回0
class Solution {
public int reverse(int x) {
//定义long类型的变量
long n = 0;
while(x != 0) {
n = n*10 + x%10;
x /= 10;
}
return (int)n == n ? n:0;
}
}
判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。题目链接
class Solution {
public boolean isPalindrome(int x) {
int j = x;
if(x < 0) {
return false;
}
long n = 0;
while (x != 0) {
n = n*10 + x%10;
x /= 10;
}
return (int)n == j;
}
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。