【力扣】9. 回文数

题目描述

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

回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

  • 例如,121 是回文,而 123 不是。

示例 1:

输入:x = 121

输出:true

示例 2:

输入:x = -121

输出:false

解释:从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。

示例 3:

输入:x = 10

输出:false

解释:从右向左读, 为 01 。因此它不是一个回文数。

提示:

  • -2^31^ <= x <= 2^31^ - 1

进阶:你能不将整数转为字符串来解决这个问题吗?

解决方案

  • C
c 复制代码
bool isPalindrome(int x) {
    if (x < 0 || (x % 10 == 0 && x != 0)) {
        return false;
    }

    int temp = 0;
    while (x > temp) 
    {
        temp = temp * 10 + x % 10;
        x /= 10;
    }
    return x == temp || x == temp / 10;
}
相关推荐
我能坚持多久11 小时前
【初阶数据结构11】——链式二叉树知识补充
数据结构·算法
liuyao_xianhui11 小时前
优选算法_两数之和_位运算_C++
java·开发语言·数据结构·c++·算法·链表·动态规划
靠沿11 小时前
【优选算法】专题十六——BFS解决最短路径问题
redis·算法·宽度优先
博风11 小时前
算法:双指针解:盛最多水的容器
算法·leetcode
夏乌_Wx11 小时前
图 | 3道LeetCode常见笔试、面试题汇总
算法
ZPC821011 小时前
PPO训练小车
人工智能·算法·机器人
阿Y加油吧11 小时前
力扣打卡day05——找到字符串中所有字母异位词、和为K的子数组
leetcode
bksczm12 小时前
二分查找的细则(binary search)
算法