莫比乌斯反演 2021-12-20 09:54 采纳率: 100%
浏览 32
已结题

有一道关于回文数的问题。

给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。

回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。

https://leetcode-cn.com/problems/palindrome-number/

  • 写回答

2条回答 默认 最新

  • 英雄哪里出来 2021年博客之星Top1 2021-12-20 13:18
    关注

    一、分析

    1、0是;
    2、负数不是;
    3、整数的话先拆解到栈中,然后比较头尾即可;

    二、题解

    bool isPalindrome(int x){
        int stk[20], top = 0;
        int i;
        if(x == 0) {
            return true;
        }
        if(x < 0) {
            return false;
        }
    
        while(x) {
            stk[top++] = x % 10;
            x /= 10;
        }
        for(i = 0; i < top/2; ++i) {
            if(stk[i] != stk[top-1-i]) {
                return false;
            }
        }
        return true;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月29日
  • 已采纳回答 12月21日
  • 创建了问题 12月20日