[模拟|数位] leetcode 9 回文数

1.题目

题目链接
判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

示例 1:

输入: 121
输出: true

示例 2:

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

示例 3:

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

2.分析

2.1.整数反转

整数反转题解
本题考察的还是如何反转一个整数的问题。也就是说,一个非负整数反转后值不变,那么它便是一个回文数。

2.2.优化

不需要等整个数完全反转,只需要比较数的后半部分反转后与前半部分是否相等即可。

2.3.偷懒解法

可以将整数视为一个字符串,比较字符串反转前后是否相等即可判断是否回文。
这里需要利用algorithm中的reverse方法。

bool isPalindrome(int x) {string a = to_string(x);string b = to_string(x);reverse(a.begin(), a.end());return a == b;
}

3.代码

class Solution {public:bool isPalindrome(int x) {//排除负数,10的倍数(防止最后x==rev/10的判定条件出错)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;}
};

[模拟|数位] leetcode 9 回文数相关推荐

  1. 【LeetCode】回文数

    个人博客:https://jacob.org.cn package leetcode.editor.cn;//判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. ...

  2. Palindromic Numbers LightOJ - 1205 数位dp 求回文数

    传送门 文章目录 题意: 思路: 题意: 求[l,r][l,r][l,r]中有多少个回文数. 思路: 裸的数位dpdpdp啦,记dp[pos][pre][state]dp[pos][pre][stat ...

  3. LeetCode 9. 回文数

    文章目录 1. 题目信息 2. 解题 1. 题目信息 判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 示例 1:输入: 121 输出: true 示例 2:输 ...

  4. leetcode isPalindrome (回文数判断)

    回文很简单,就是正着读和反着读一样,要判断一个数是否为回文数只需要判断正反两个是不是相等即可. 再往深了想一下,只需要判断从中间分开的两个数一个正读,一个反读相等即可. 代码: class Solut ...

  5. 20200119:(leetcode)回文数(3种解法)

    回文数 题目 基本思路 代码实现 题目 判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 示例 1: 输入: 121 输出: true 示例 2: 输入: -1 ...

  6. Leetcode 9. 回文数(Palindrome Number)

    判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向 ...

  7. leetcode 9 --- 回文数

    1 题目 判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 2 解法 2.1 初版 2.1.1 思路 由于题目不允许把数直接转化为字符串, 所以想到了把数的每一 ...

  8. leetcode记录-回文数

    判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向 ...

  9. LeetCode - 9. 回文数

    9. 回文数 class Solution {public boolean isPalindrome(int x) {String s = String.valueOf(x);char[] chars ...

最新文章

  1. Python中的sorted函数以及operator.itemgetter函数
  2. leetcode 387 C++数组做法
  3. dubbo-快速入门-分布式RPC框架Apache Dubbo
  4. RMI和WebService
  5. WSS 3.0 和 sharepoint 2007 中文SDK
  6. cocos android 剪切板,Cocos Creator 点击按钮复制到剪切版
  7. ART虚拟机 _ Java对象和类的内存结构,java中级面试题库weixin
  8. “我有必要写技术博客吗?” 写技术博客一年,谈谈其得失优劣
  9. 来看看国内大公司官网隐藏的彩蛋
  10. FFmpeg使用教程
  11. 5阶无向完全图_离散数学图论答案
  12. OpenCV找圆系列(1)SimpleBlobDetector源码,凸度和圆度等检测原理
  13. 什么是X11-Forwarding
  14. 用Python的matplotlib绘制残差分析散点误差棒图
  15. 卧槽,这也真的太上头了吧
  16. 信号和电源隔离的有效设计技术
  17. linux下挂载新的磁盘
  18. Android textview设置ttf字体库本地库和网络库使用的两种方式
  19. 字符串中汉字和数字转换成拼音
  20. python后端面经_2019 Python后端开发面经总结:网易、滴滴、老虎证券

热门文章

  1. deeply understanding Binary tree--二叉树
  2. vue3中setup()函数的使用二
  3. php 复制文件夹并压缩到最小_php实现对文件压缩简单的方法
  4. 回归返回2个以前标签_大本回归蝙蝠侠,同期将出现2个布鲁斯,网友:可以互相串个门...
  5. python建立FTP服务器
  6. 2018蓝桥模拟赛(一) 数独(dfs)
  7. JupyterLab的安装笔记
  8. 面向对象语言编程的心得
  9. Python中字符串String去除出换行符(\n,\r)和空格的问题
  10. 使用VS自带的打包工具,制作winform安装项目