LeetCode【9】

题目

在这里插入图片描述
我感觉吧,这可能是我做LeetCode最简单的一道题了

2.思路

分为两种情况
1.如果是负数,那么他一定不是回文数字
2.如果大于等于0分为两种情况
如果数字的位数为偶数,以st.length()/2为界限i对印着st.length()-i-1
如果数字的位数为奇数,以st.length()/2为界限i对应着i+st.length()/2+1

3.打卡


贴代码

class Solution {
    public boolean isPalindrome(int x) {
        boolean boo=true;
        if (x<0) {
            boo=false;
        }
        else{
            String st=String.valueOf(x);
            if (st.length()%2==0) {
                for (int i = 0; i < st.length() / 2; i++) {
                    if (st.charAt(i)!=st.charAt(st.length()-i-1)) {//12345  54321
                        boo=false;
                        break;
                    }
                }
            }
            else{
                    for (int i = 0; i < st.length() / 2; i++) {
                        if (st.charAt(i)!=st.charAt(i+st.length()/2+1)) {//12345    1   12345
                            boo=false;
                        }
                    }
            }
        }
        return boo;
    }
}class A{
    public static void main(String[] args) {
        System.out.println(new Solution().isPalindrome(-0));
    }
}

猜你喜欢

转载自blog.csdn.net/u012385160/article/details/89092694