zoukankan      html  css  js  c++  java
  • LeetCode 9. Palindrome Number(回文数)


    Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same backward as forward.

    Example 1:

    Input: 121
    Output: true

    Example 2:

    Input: -121
    Output: false
    Explanation: From left to right, it reads -121. From right to left, it becomes 121-. Therefore it is not a palindrome.

    Example 3:

    Input: 10
    Output: false
    Explanation: Reads 01 from right to left. Therefore it is not a palindrome.

    Follow up:

    Coud you solve it without converting the integer to a string?

    public boolean isPalindrome(int x) {
        int[] nums=new int[32];
        int i=0;
        if(x<0)//负数或   最后一位为0(后半句不严谨,单独0是对称的)
            return false;
        while(x/10>0){
            nums[i]=x%10;
            i++;
            x=x/10;
        }
        nums[i]=x%10;
        int len=0;
        for(i=31;i>=0;i--){
            if(nums[i]>0){
                len=i;//数字位数
                break;
            }
        }
        for(i=0;i<=len/2;i++){
            if(nums[i]!=nums[len-i])
                return false;
        }
        return true;
    }
    

     

    博客园的编辑器没有CSDN的编辑器高大上啊
  • 相关阅读:
    poj 1466 Girls and Boys
    poj 1486 Sorting Slides
    poj 2112 Optimal Milking
    poj 1274 The Perfect Stall
    SHoj 420 购买装备
    poj 2987 Firing
    SHoj A序列
    FOJ Problem 2271 X
    XidianOJ 1028 数字工程
    XidianOJ 1030 三数和
  • 原文地址:https://www.cnblogs.com/flowingfog/p/9774626.html
Copyright © 2011-2022 走看看