p12 判断一个数是否为回文数

一:解题思路

二:完整代码示例 (C++版和Java版)

第一种方法C++

  //Time:O(m),Space:O(1)
  class Solution 
  {
  public:
      bool isPalindrome(int x) 
      {
          string str = to_string(x);//C++11特有语法,将整数x转化为字符串

          int i = 0, j = str.size() - 1;

          while (i < j)
          {
              if (str[i] != str[j]) return false;

              i++;
              j--;
          }
          return true;
      }
  };

第一种方法Java:

class Solution
{
    public boolean isPalindrome(int x)
    {
          String str=String.valueOf(x);

          int i=0,j=str.length()-1;
          
          while(i<j)
          {
              if(str.charAt(i)!=str.charAt(j)) return false;
              
              i++;
              j--;
          }

          return true;
    }
}

第二种方法C++:

  class Solution 
  {
  public:
      bool isPalindrome(int x) 
      {
          if (x < 0) return false;
          int temp = x;
          long y = 0;

          while (temp != 0)
          {
              int num = temp % 10;
              y = y * 10 + num;
              temp = temp / 10;
          }

          return (x==y);
      }
  };

第二种方法 Java:

class Solution
{
    public boolean isPalindrome(int x)
    {
        if(x<0) return false;
        
        int temp=x;
        long y=0;

        while(temp!=0)
        {
            int num=temp%10;
            y=y*10+num;
            temp=temp/10;
        }

        return (y==x);
    }
}

 

上一篇:最新苹果证书.p12及.mobileprovision文件的申请步骤


下一篇:WxJava微信p12错误问题