回文数 leetcode 初级算法
题目要求 :判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
例如1:
输入 :123
返回 :false
例如2
输入 323
返回 true
案例分析 :分析题目回文数是指正序和倒序都是一样的整数 所以我们可以先把原来的数倒序 在进行判断两个数是都是一样的 废话少说 直接上代码
class Solution {
public boolean isPalindrome(int x) {
//定义目标数
int target = 0 ;
int tmp = 0;
int xback = x ;//拷贝x 以备后来进行比对
//例如x = 123;
//进行while 循环 第一次循环 tmp 取余 = 3 ; x= 12 ; target = 3
//第二次循环 tmp 取余 = 2 ; x= 1 ; target = 32
//第三次循环 tmp 取余 = 1 ; x= 0 ; target = 321
while(x!= 0){
tmp = x % 10;
x /= 10;
target = target *10 + tmp;
}
if(xback == target && xback > 0){ //进行判断是否相等 并且xback的值不能小于0 如果小于0也不符合条件
return true;
}else{
return false;
}
}
public static void main(String[] args) {
int x = 989;
System.out.println(new Solution().isPalindrome(x));
int y = 1453;
System.out.println(new Solution().isPalindrome(y));
}
}
可以看到程序最后运算结果
写在最后 我是菜鸡 也是根据网上大神写的算法 自己学习后发帖纪录 也算是共勉吧 如果你喜欢我的文章可以为我点个赞