力扣9. 回文数

模拟

  • 思路:
    • 计算这位数的反序数值;
    • 然后比较与原数值是否相等;
cpp 复制代码
class Solution {
public:
    bool isPalindrome(int x) {
        if (x < 0) {
            return false;
        }
        
        if (x < 10) {
            return true;
        }
        
        long long int sum = 0;
        int tmp = x;
        while (tmp) {
            sum = sum * 10 + tmp % 10;
            tmp /= 10;
        }
        
        return (sum == x);
    }
};
  • 上述方法将数值的每一位都遍历了一次,可以根据回文的特性遍历到中间位置;
cpp 复制代码
class Solution {
public:
    bool isPalindrome(int x) {
        if ((x < 0) || (x % 10 == 0 && x != 0)) {
            return false;
        }

        int rev = 0;
        while (x > rev) {
            rev = rev * 10 + x % 10;
            x /= 10;
        }

        return (x == rev) || (x == rev / 10);
    }
};
相关推荐
iAkuya11 分钟前
(leetcode)力扣100 26环状链表2(双指针)
算法·leetcode·链表
sin_hielo13 分钟前
leetcode 2402(双堆模拟,小根堆)
数据结构·算法·leetcode
weixin_4617694021 分钟前
3. 无重复字符的最长子串
c++·算法·滑动窗口·最长字串
Morwit23 分钟前
【力扣hot100】 312. 戳气球(区间dp)
c++·算法·leetcode
CoovallyAIHub32 分钟前
摄像头如何“看懂”你的手势?手势识别实现新人机交互
深度学习·算法·计算机视觉
我命由我1234532 分钟前
Photoshop - Photoshop 工具栏(45)历史记录艺术画笔工具
学习·ui·职场和发展·求职招聘·职场发展·学习方法·photoshop
妮妮喔妮42 分钟前
前端字节面试大纲
前端·面试·职场和发展
Q741_14744 分钟前
C++ 栈 模拟 力扣 394. 字符串解码 每日一题 题解
c++·算法·leetcode·模拟·
AI科技星1 小时前
张祥前统一场论:空间位移条数概念深度解析
数据结构·人工智能·经验分享·算法·计算机视觉
Wuliwuliii1 小时前
闵可夫斯基和、需存储的最小状态集
c++·算法·动态规划·闵可夫斯基和