力扣算法-9.回文数

9.回文数

个人思考

  • 首先从示例2可以看出符号也算在整数这个整体内,可以先判断整数若为负数则返回false
  • 其次很容易就会想到遍历两次,从头以及从尾,遍历得到的结果相比较,相同则为回文数
java 复制代码
public class Alee9 {
    public static void main(String[] args) {
        int x = 121;
        Alee9 alee9 = new Alee9();
        System.out.println(alee9.isPalindrome(x));
    }
    public boolean isPalindrome(int x) {
        if(x<0){
            return false;
        }
        // 先将整数转为字符串
        String number = String.valueOf(x);
        // 新建一个字符串长度的数组
        int[] array = new int[number.length()];
        // 逐个放入数组内
        for(int i = 0; i < number.length();i++){
            array[i]=Character.getNumericValue(number.charAt(i));
        }
        StringBuilder sb1 = new StringBuilder();
        StringBuilder sb2 = new StringBuilder();
        // 遍历两次拼接
        for(int i = 0; i < array.length;i++){
            sb1.append(array[i]);
        }
        for(int j = array.length-1; j >= 0;j--){
            sb2.append(array[j]);
        }
        // 转化为字符串
        String a = sb1.toString();
        String b = sb2.toString();
        // 比较两者的值
        if(a.equals(b)){
            return true;
        }
        return false;
    }
}
相关推荐
Jerry6 小时前
LeetCode 160. 相交链表
算法
认真的酒窝7 小时前
自己动手开发编译器(十一)语义分析
java·开发语言
Jerry7 小时前
LeetCode 19. 删除链表的倒数第 N 个结点
算法
金銀銅鐵7 小时前
费马小定理
python·数学·算法
wbs_scy8 小时前
Linux C++ 高并发编程:线程池全链路深度解析,从原理到手撕实现
java·开发语言
JAVA面经实录9178 小时前
Linux 常用命令完整知识体系
java·linux·开发语言·汇编
技术不好的崎鸣同学8 小时前
[ACTF2020 新生赛]Exec 思路及解法
算法·安全·web安全
Full Stack Developme10 小时前
Java LRU 与 LFU 算法及应用
java·开发语言·算法
Jerry11 小时前
LeetCode 707. 设计链表
算法